#include
int main()
{
int n=0,i=0,j=0,m=0;
while(~scanf("%d",&n))
{
for(i=0;i
#include
int main()
{
int n=0,i=0,j=0;int m=0;
int count=0;
while(~scanf("%d",&n))
{
for(i=0;i
这个演变过来的。
思路:只需要仍然保持输入几就打印几行,但是改善前面几行的条件,也就是j不动,但是把i给改一点
演变过程:
#include
int main()
{
int n=0,i=0,j=0;int m=0;
int count=0;
while(~scanf("%d",&n))
{
for(i=0;i
#include
int main()
{
int n=0;
//int count=0;
int i=0;
while(~scanf("%d",&n))
{
for(i=0;i
代码1(简洁版):
#include
int main()
{
int days[12]={31,28,31,30,31,30,31,30,31,30,31,30};
int b=0;
int a=0;
while(scanf("%d %d",&a,&b)!=EOF)
{
int day=days[b-1];
if((a%4==0 && a%100!=0)||(a%400==0))
{
if(b==2)
{
day=day+1;
}
}
printf("%d\n",day);
}
return 0;
}
#include
int main()
{
int a=0,b=0,c=0;
while(scanf("%d %d",&a,&b)!=EOF);//输入年份和月份
{
if((a%4==0 && a%100!=0)|| a%400==0)
{
if(b==2)
{
printf("29");
}
}
else
{ //2,4,,,,8,,1,12显示31天
if(b%2==0)
{
printf("30");
}
else
{
printf("31");
}
}
}
return 0;
}
比如输入: 1.0+2.0
输出:1.0+2.0=3.0
#include
int main()
{
float a,c=0,sum,jian,chu,cheng;
char b;
while(scanf("%f %c %f",&a,&b,&c))
{
if(b=='+')
{
sum=a+c;
printf("%f%c%f=%f",a,b,c,sum);
}
if(b=='*')
{
cheng=a*c;
printf("%f%c%f=%f",a,b,c,cheng);
}
if(b=='-')
{
jian=a-c;
printf("%f%c%f=%f",a,b,c,jian);
}
if(b=='/')
{
if(c==0)
{
printf("除数不能为0");
}
else
{ chu=a/c;
printf("%f%c%f=%f",a,b,c,chu);
}
}
if(b!='+'&& b!='-'&& b!='*'&& b!='/')
printf("无效");
}
return 0;
}
#include "stdio.h"
void main() {
int n;//输入几个数
int t;// 全部没有重复数字 才会执行
int i,j;//冒泡 i / j
int arr[20]= {0};//初始化数组
scanf("%d",&n);
for(i=0; i
第二行第三行依次类推
#include
int main()
{
int c=0;
int count=0;
int i=0;
char buf[100]={0};
gets(buf);
while(buf[i]!=0)
{
if(buf[i]=='A')
{
c++;
}
else if(buf[i]=='B')
{
count++;
}
i++;
}
if(c>count)
{
printf("A\n");
}
if(count>c)
{
printf("B\n");
}
else if(c==count)
{
printf("E\n");
}
return 0;
}
4.
如果输入内容里包含AEIOUaeiou,元音字符就打印"vowel",如果没有就打印"consant"
#include
#include
int main ()
{
int i=0;
char vowel[]="AEIOUaeiou";
int ch=0;
ch=getchar();
if(strchr(vowel,ch))
{
printf("vowel");
}
else
printf("Consonant");
//getchar();
return 0;
}
如果多组输入,不用getchar,用scanf的话:
用ispalpha库函数
第三种方法,用Getchar
就会报错
不论输入数字还是字母都显示不是字母
但是如果用getchar单行输入就没问题
但是我们就是想要多行输入的效果
可以试试这个
#include
int main() {
char ch,t;
int z;
z=1;
do{
ch=getchar();
if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')) {
printf("is an alphabet\n");
}else if(ch>=48 && ch<=57){//0-9的acsii码
printf("is not an alphabet\n");
}else if(t=27){//ESC的ASCII
z=0; //z为0退出
break;//esc->27
}
t=getchar();//读取回车\n
}while(z);//z为1时循环,为0时为假,退出循环
return 0;
}
括号别丢了
#include
int main()
{
int a=0,b=0,c=0;
while(scanf("%d %d %d",&a,&b,&c)!=EOF){
if( (a+b>c) ||(a+c>b) || (b+c>a) ){
printf("是三角形");
if(a==b&&a==c){
printf("是全等三角形");}
else if(a==b&&a!=c || a==c&&a!=b || b==c&&b!=a){
printf("等腰");}
else{
printf("其他三角形");}
}
else{
printf("不是三角形");}
}
return 0;
}