1.写一个程序,从键盘上接收两个整数,输出这两个整数中值大
的一个。
#include <stdio.h>
int main(){
int a,b;
printf("请输入2个数:\n");
fflush(stdout);
scanf("%d%d",&a,&b);
if(a>b){
printf("两个整数中最大的是:
%d",a);
}else{
printf("两个整数中最大的是:
%d",b);
}
2.写一个程序,接收两个整数a和b,并判断a是否能被b整除,输
出判断结果。
#include <stdio.h>
int main(){
int a=0,b=0;
printf("请输入2个数:\n");
fflush(stdout);
scanf("%d%d",&a,&b);
if(b % a==0){
printf("结果为:%d",b/a);
}else{
printf("不能被整除");
}
return 0;
}
3.
(1) 写一个程序,接收两个数字,判断这两个数字的乘积是
否大于等于5000,如果大于则告诉用户大于5000,如果相等则告
诉用户等于5000,否则告诉用户小于5000。
#include <stdio.h>
int main(){
int a=0,b=0;
printf("请输入2个数:\n");
fflush(stdout);
scanf("%d%d",&a,&b);
if(a*b>5000){
printf("两个数的乘积大于5000");
}else if(a*b==5000){
printf("两个数的乘积等于5000");
}else{
printf("两个数的乘积小于5000");
}
return 0;
}
4.
(1) 银行的自动取款机大概有如下几种操作:存款、取款、
查询余额、转账等几种功能。要求用switch语句进行模拟其操作
。
(2) 由于在这里没有具体的按钮,可以使用数字来模拟用户
的选择。例如:可以提示用户"存款请按1"、"取款请按2"、"查询
余额请按3"、"转账请按4"、"退出请按5"。来让用户进行选择。
(3) 而具体的操作,可以直接在屏幕上输出操作过程即可。
例如:当用户选择1后,可以直接在屏幕上打印“正在进行存款操
作.”即可,其它操作类似。
#include <Stdio.h>
int main (){
int a=1,temp=0;
printf("存款请按1\n");
printf("取款请按2\n");
printf("查询余额请按3\n");
printf("转账请按4\n");
printf("退出请按5\n");
printf("请选择具体操作:\n");
fflush(stdout);
scanf("%d",&a);
temp=a;
switch(temp){
case 1:
printf("正在进行存款操作");break;
case 2:
printf("正在进行取款操作");break;
case 3:
printf("正在进行查询余额操
作");break;
case 4:
printf("正在进行转账操作");break;
case 5:
printf("正在退出");break;
}
printf("%d",temp);
return 0;
}
5.从键盘上接收一个字符,判断它到底是哪种字符:数字,小写
字母,大写字母,其他字符。
#include <stdio.h>
int main(){
char temp;
temp=getchar();
if(temp>='a'&&temp<='z'){
printf("小写字母");
} else if(temp>='A'&&temp<='Z')
{
printf("大写字母");
}if(temp>='0'&&temp<='9'){
printf("数字");}
else{ printf("其他字符");
}
}
6.写一个程序,能够判断从键盘上输入的年份是否是一个闰年。
#include <stdio.h>
int main(){
int year;
printf("请输入一个年份");
fflush(stdout);
scanf("%d",&year);
if((year%4==0&&year%100!=0)||year%400==0)
printf("闰年\n");
else{
printf("不是闰年");}
return 0;
}
7.写一个程序,接收一个数字,判断它是否能同时被2和3整除
#include <stdio.h>
int main(){
int a;
printf("请输入一个数");
fflush(stdout);
scanf("%d",&a);
if(a%2==0||a%3==0){
printf("能被整除");
}else{
printf("不能被整除");
}
return 0;
}
8.写出下面各逻辑表达式的值,a=3,b=4,c=5。
(1)a+b>c&&b==c 0
(2)a||b+c&&b-c 1
(3)!(a>b)&&!c||1 1
(4)!(x=a)&&(y=b)&&0
(5)!(a+b)+c-1&&b+c/2
(1)
#include <stdio.h>
int main(){
int a=3,b=4,c=5,temp;
temp=a+b>c&&b==c;
printf("%d",temp);
return 0;
}
(2)
#include <stdio.h>
int main(){
int a=3,b=4,c=5,temp;
temp=a||b+c&&b-c;
printf("%d",temp);
return 0;
}
(3)
#include <stdio.h>
int main(){
int a=3,b=4,c=5,temp;
temp=!(a>b)&&!c||1;
printf("%d",temp);
return 0;
}
(4)
#include <stdio.h>
int main()
{
int a=3,b=4,c=5,x,y;
printf("%d\n",!(x=a)&&(y=b)&&0);
printf("%d,%d,%d",a,b,c);
return 0;
}
(5)
#include <stdio.h>
int main(){
int a=3,b=4,c=5,temp;
temp=!(a+b)+c-1&&b+c/2;
printf("%d",temp);
return 0;
}
9.有3个整数a、b、c,由键盘输入,输出其中最大的数。
#include <stdio.h>
int main(){
int a,b,c;
printf("请输入3个数");
fflush(stdout);
scanf("%d%d%d",&a,&b,&c);
if(a>b && a>c){
printf("最大数为:%d",a);
}else if(b>a && b>c){
printf("最大数为:%d",b);
}else{
printf("最大数为:%d",c);
}
return 0;
}
10.给出一百分制成绩,要求从键盘输入成绩后,输出成绩等级‘
A’、‘B’、‘C’、‘D’、'E'。90分以上为‘A’,80—89分为
‘B’,70—79分为‘C’,60—69分为‘D’,60分一下为'E'。
#include <stdio.h>//输入一个成绩判断ABCDE等级
int main(){
int a=0;
printf("请输入一个成绩:\n");
fflush(stdout);
scanf("%d",&a);
if(0<=a && a<60){
printf("E");
}else if(a>=60 && a<70){
printf("D");
}else if(a>=70 && a<80){
printf("C");
}else if(a>=80 && a<90){
printf("B");
}else if(a>=90 ){
printf("A");
}else{
printf("不合法");
}
return 0;
}
#include<stdio.h>
int main()
{
int a;
printf("请输入分数:\n");
fflush(stdout);
scanf("%d",&a);
switch (a/10)
{
case 10:printf("A\n");break;
case 9:printf("A\n");break;
case 8:printf("B\n");break;
case 7:printf("C\n");break;
case 6:printf("D\n");break;
default:printf("E\n");break;
}
return 0;
}
11.给你个不多于5位的正整数,要去:
(1)求出它是几位数;
(2)分别输出每一位数字;
(3)按逆序输出各位数字,例如原数为321,应输出123。
#include <stdio.h>
int main(){
long int num;
int
indiv,ten,hundred,thousand,ten_thousand,place;
printf("输出一个数(0~99999):");
fflush(stdout);
scanf("%d",&num);
if(num>9999) place=5;
else if(num>999) place=4;
else if(num>99) place=3;
else if(num>9) place=2;
else place=1;
printf("位数=%d\n",place);
printf("每位数字为:%d\n",num);
ten_thousand=num/10000;
thousand=(int)(num-ten_thousand*10000)/1000;
hundred=(int)(num-ten_thousand*10000-
thousand*1000)/100;
ten=(int)(num-ten_thousand*10000-thousand*1000-
hundred*100)/10;
indiv=(int)(num-ten_thousand*10000-thousand*1000
-hundred*100-ten*10);
printf("方向数字为:");
switch(place)
{
case 5:printf("%d %d %d %d %d
\n",indiv,ten,hundred,thousand,ten_thousand);break;
case 4:printf("%d %d %d %d
\n",indiv,ten,hundred,thousand); break;
case 3:printf("%d %d %d\n",indiv,ten,hundred);
break;
case 2:printf("%d %d\n",indiv,ten);break;
case 1:printf("%d\n",indiv);break;
}
return 0;
}
#include <stdio.h>//分别输出每一位数字;
int main()
{
int i,nLen;
char str[6]="\0";
gets(str);
nLen=strlen(str);
printf("你输入了一个%d 位数.\n各位分别
是:",nLen);
for (i=0;i<nLen;i++)
printf("%c ",str[i]);
return 0;
}
12.从键盘输入三个整数,判断是否能构成三角形,若能构成三角
形判断是直角三角形,等腰三角形还是等边三角形还是任意三角
形。
#include <stdio.h>
int main()
{
int a,b,c;
printf("请输入三个数。例如:1 2 3\n");
fflush(stdout);
scanf("%d%d%d",&a,&b,&c);
printf("您输入的数字为%d %d %d\n",a,b,c);
if (((a+b)>c && (a-b)<c) || (b+c)>a && (b-c)<a || (a+c)
>b && (a-c)<b)
if (a==b&&b==c)
printf("三角形为等边三角形");
else if ((a==b && b!=c)||(a==c && b!=c)||(b==c && a!
=c))
printf("三角形为等腰三角形");
else printf("三角形为不等边三角形也不是等腰三角形");
else printf("不构成三角形");
return 0;
}