1、从终端输入一个字符:如果是大写的 转换成小写,如果是小写的 转换成大写,如果是 0-9 按照 %d 输出对应整型的 0-9,其他字符 转换成 #并输出。
#include <stdio.h>
int main(int argc, const char *argv[])
{
char c;
printf("请输入:");
scanf ("%c",&c);
if(c>=48&&c<=57){
printf("%d\n",c-48);
}else if(c>=65&&c<=90){
printf("%c\n",c+32);
}else if(c>=97&&c<=122){
printf("%c\n",c-32);
}else{
printf("#\n");
}
return 0;
}
2、学生成绩管理
输入一个学生的成绩
[90,100] A
[80,90) B
[70,80) C
[60,70) D
[0,60) 不及格
其他 输入错误
#include <stdio.h>
int main(int argc, const char *argv[])
{
int score;
printf("请输入成绩:");
scanf("%d",&score);
getchar();
if(score<=100&&score>=90){
printf("A\n");
}else if(score<90&&score>=80){
printf("B\n");
}else if(score<80&&score>=70){
printf("C\n");
}else if(score<70&&score>=60){
printf("D\n");
}else if(score<60&&score>=0){
printf("不及格\n");
}else{
printf("输入错误\n");
}
return 0;
}
3、输入一个年份 判断是平年还是闰年,闰年:能被4整除且不能被100整除 或者能被400整除,提示:整除: 没有余数 year%4==0,2000 闰年 2004 闰年 2022 平年 1900 平年
#include <stdio.h>
int main(int argc, const char *argv[])
{
int year;
scanf("%d",&year);
getchar();
if(year%400==0){
printf("闰年\n");
}else if(year%100==0){
printf("平年\n");
}else if(year%4==0){
printf("闰年\n");
}else{
printf("平年\n");
}
return 0;
}
4、 输入一个三位数,判断是不是水仙花数,水仙花数(个位的三次方+十位的三次方+百位的三次方=数本身)
#include <stdio.h>
int main(int argc, const char *argv[])
{
int narc,b,s,g;
printf("请输入一个三位数:");
scanf("%d",&narc);
if(narc<100||narc>999){
printf("输入错误\n");
return 0;
}
b = narc/100;
s = narc/10%10;
g = narc%10;
if(b*b*b+s*s*s+g*g*g==narc){
printf("%d是水仙花数\n",narc);
}else{
printf("计算得:%d\n%d不是水仙花数\n",b*b*b+g*g*g+s*s*s,narc);
}
return 0;
}
5、思考用算术求和和异或的方法实现两个数交换。
int main(int argc, const char *argv[])
{
int a,b,a2,b2;
printf("请输入a:");
scanf("%d",&a);
getchar();
a2=a;
printf("请输入b:");
scanf("%d",&b);
getchar();
b2=b;
printf("算数求和:\n");
a=a+b;b=a-b;a=a-b;
printf("a=a+b\n");
printf("b=a-b\n");
printf("a=a-b\n");
printf("a=%d b=%d\n",a,b);
printf("异或:\n");
b2=a2^b2;a2=a2^b2;b2=a2^b2;
printf("b=a^b\n");
printf("a=a^b\n");
printf("b=a^b\n");
printf("a=%d b=%d\n",a2,b2);
return 0;
}