题源:牛客网
16、BoBo写了一个十六进制整数ABCDEF,他问KiKi对应的十进制整数是多少。
#include
int main()
{
//创建变量
char arr[] = "ABCDEF";
int i;
int sum=0,c;
//依次转换十六进制为十进制
for(i=0; arr[i]!='\0'; i++)
{
char b = arr[i];
if(b>='0' && b<='9')
{
c = b - '0';
}
else if(b>='A' && b<='F')
{
c = b - 'A'+ 10;
}
else
{
printf("十六进制数字有误\n");
break;
}
//每一位相加
sum = sum * 16 + c;
}
printf("%15d\n",sum);
return 0;
}
17、我们处理的整数通常用十进制表示,在计算机内存中是以二进制补码形式存储,但通常二进制表示的整数比较长,为了便于在程序设计过程中理解和处理数据,通常采用八进制和十六进制,缩短了二进制补码表示的整数,但保持了二进制数的表达特点。请输出十进制整数1234对应的八进制和十六进制。
#include
int main()
{
int input = 1234;
printf("%#o %#X",input,input);
return 0;
}
18、牛牛从键盘读入一个字符,一个整数,一个单精度浮点数,按顺序输出它们,并用空格分隔,浮点数保留 6 位小数。
#include
int main()
{
char a;
int b=0;
float c=0.0f;
scanf("%c%d%f",&a,&b,&c);
printf("%c %d %f",a,b,c);
return 0;
}
19、读入 3 个整数,牛牛尝试以后两个数字占 8 个空格的宽度靠右对齐输出。
#include
int main(){
int a = 0;
int b = 0;
int c = 0;
scanf("%d %d %d", &a, &b, &c);
printf("%d%8d%8d",a,b,c);
return 0;
}
20、输入一个十六进制数a,和一个八进制数b,输出a+b的十进制结果(范围-2^31~2^31-1)。
#include
int main()
{
int a,b;
scanf("%x %o",&a,&b);
int sum = a + b;
printf("%d\n",sum);
return 0;
}
21、给你两个整数,要求输出这两个整数的和
#include
int Add(int x, int y)
{
return x+y;
}
int main()
{
int a,b;
scanf("%d %d",&a,&b);
int sum = Add(a,b);
printf("%d\n",sum);
return 0;
}
22、输入两个整数a, b, 输出a/b的值,只保留整数部分
#include
int main()
{
int a,b;
scanf("%d %d",&a,&b);
int div = a / b;
printf("%d\n",div);
return 0;
}
23、输入两个整数a, b, 输出a 除以b的余数,5除以2的余数为1,10除以4的余数为2
#include
int main()
{
int a,b;
scanf("%d%d",&a,&b);
int rem = a % b;
printf("%d\n",rem);
return 0;
}
24、 给定一个浮点数,要求得到该浮点数的个位数。
#include
int main()
{
float a;
scanf("%f",&a);
int b = a/1;
printf("%d\n",b%10);
return 0;
}
25、牛牛正在给他的朋友们买电影票,已知一张电影票价是100元,计算 x 位朋友的总票价是多少?
#include
int main()
{
int x;
scanf("%d",&x);
printf("%d\n",100*x);
return 0;
}
26、给定两个整数a和b (0 < a,b < 10,000),计算a除以b的整数商和余数。
#include
int main()
{
int a=0;
int b=0;
scanf("%d %d",&a,&b);
printf("%d %d",a/b,a%b);
return 0;
}
27、输入一个整数a, 求个位数
#include
int main()
{
int a=0;
scanf("%d",&a);
a=a%10;
printf("%d",a);
return 0;
}
28、输入一个整数,求其十位数
#include
int main()
{
int a=0;
scanf("%d",&a);
printf("%d",(a%100)/10);//保证是两位数
return 0;
}
29、
小S:终于可以开学啦!好开心啊!
小Y:你没看新闻吗,开学日期又延后了。
小S:NOOOOOOOOOOOOOOOO!
小S知道原计划星期X开学,通知开学时间延期N天,请问开学日期是星期几(星期日用7表示)?
#include
int main()
{
unsigned int x,n;//创建变量
scanf("%d %d",&x,&n);//输入
//分情况输出
if(x+n <= 7)
{
printf("%d",x+n);
}
else if((x+n)%7 == 0)
{
printf("%d\n",7);
}
else
{
printf("%d\n",(x+n)%7);
}
return 0;
}
30、给定秒数 seconds ,把秒转化成小时、分钟和秒。
#include
int main()
{
unsigned int hour=0,minute=0,second=0;
int seconds;
scanf("%d",&seconds);
hour = seconds / 3600;
minute = (seconds%3600) / 60;
second = seconds % 60;
printf("%d %d %d\n",hour,minute,second);
return 0;
}