题目 1668: printf基础练习2 (C)

12 篇文章 0 订阅

题目练习: C语言网.

题目描述

写一个进制转换程序,可以输出任意一个数字的八进制、十进制、十六进制 !

输入

输入一个整数,不超过10^9

输出

0144 100 0x64

样例输入

100

样例输出

0144 100 0x64

运行代码:

#include <stdio.h>
int main(void){
    int n;
    scanf("%d",&n);
    printf("%#o %#d %#x\n",n,n,n);
    



    /*
    无前缀方式:

    printf("%o",num)  //无前缀o的8进制数

    printf("%x",num)  //无前缀0x的小写16进制数

    printf("%X",num)  //无前缀0X的大写16进制数



    有前缀方式:

    printf("%#o",num) //有前缀o的8进制数

    printf("%#x",num) //有前缀0x的小写16进制数

    printf("%#X",num) //有前缀0X的大写16进制数
    
    
    */
    return 0;
}

运行结果:

在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
#include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int choice, num1, num2, answer, input, score = 0, count = 0, wrong_count = 0; char op; srand(time(NULL)); printf("欢迎使用小学数学学习系统\n"); printf("请输入用户名和密码以登录系统\n"); while (1) { printf("\n请选择需要使用的功能:\n"); printf("1. 随机出题\n"); printf("2. 自动评分\n"); printf("3. 查看正确答案\n"); printf("4. 错题重做\n"); printf("5. 退出系统\n"); printf("请输入选项序号:"); scanf("%d", &choice); switch (choice) { case 1: count = 0; wrong_count = 0; score = 0; printf("\n请输入题目数量:"); scanf("%d", &count); for (int i = 0; i < count; i++) { num1 = rand() % 100; num2 = rand() % 100; op = rand() % 4; switch (op) { case 0: printf("%d + %d = ", num1, num2); answer = num1 + num2; break; case 1: printf("%d - %d = ", num1, num2); answer = num1 - num2; break; case 2: printf("%d * %d = ", num1, num2); answer = num1 * num2; break; case 3: printf("%d / %d = ", num1, num2); answer = num1 / num2; break; } scanf("%d", &input); if (input == answer) { printf("回答正确!\n"); score++; } else { printf("回答错误!正确答案为:%d\n", answer); wrong_count++; } } break; case 2:printf("\n您的得分是:%d 分\n", score); break; case 3: printf("\n请输入题目数量:"); scanf("%d", &count); for (int i = 0; i < count; i++) { num1 = rand() % 100; num2 = rand() % 100; op = rand() % 4; switch (op) { case 0: printf("%d + %d = %d\n", num1, num2, num1+num2); break; case 1: printf("%d - %d = %d\n", num1, num2, num1-num2); break; case 2: printf("%d * %d = %d\n", num1, num2, num1*num2); break; case 3: printf("%d / %d = %d\n", num1, num2, num1/num2); break; } } break; case 4: printf("\n请输入需要重做的题目数量:"); scanf("%d", &count); for (int i = 0; i < count; i++) { num1 = rand() % 100; num2 = rand() % 100; op = rand() % 4; switch (op) { case 0: printf("%d + %d = ", num1, num2); answer = num1 + num2; break; case 1: printf("%d - %d = ", num1, num2); answer = num1 - num2; break; case 2: printf("%d * %d = ", num1, num2); answer = num1 * num2; break; case 3: printf("%d / %d = ", num1, num2); answer = num1 / num2; break; } scanf("%d", &input); if (input == answer) { printf("回答正确!\n"); } else { printf("回答错误!正确答案为:%d\n", answer); wrong_count++; } } break; case 5: printf("\n感谢使用小学数学学习系统!\n"); exit(0); default: printf("\n请输入正确的选项序号!\n"); break; } } return 0; }的错误
06-10

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值