1.输入n个数,输出其中最值的差
#include<stdio.h>
int main()
{
int max=0;
int min=99999;
int n=0;
scanf("%d",&n);
int arr[n]={0};
for(int i=0;i<n;i++)
{
scanf("%d",&arr[i]);
if(arr[i]>max)
max=arr[i];
if(arr[i]<min)
min=arr[i];
}
printf("%d\n",max);
printf("%d\n",min);
return 0;
}
错误示范
#include<stdio.h>
int main()
{
int max=0;
int min=99999;
int n=0;
int arr[]={0};//数组的初始化方式错误,在输入数组时,数组长度只定义为1,数组长度应该定义为
n即:int arr[n];应该先输入第一个数,让它成为max和min的初始值
scanf("%d",&n);
for(int i=0;i<=n;i++)
{
scanf("%d",&arr[i]);
if(arr[i]>max)
max=arr[i];
if(arr[i]<min)
min=arr[i];
}
printf("%d\n",max);
printf("%d\n",min);
return 0;
}
2.判断输入的字符是否为字母
#include<stdio.h>
int main()
{
char a=0;
while(scanf(" %c",&a)!=EOF)//%c前的空格可以跳过下个字符之前的所有空白字符
{//scanf函数成功读取值时返回的是读取数据的个数,读取失败时返回的是EOF
if(a>='A'&&a<='Z'||a>='a'&&a<='z')
printf("YES!");
else
printf("NO!");
}
//或者我们可以在while循环中添加一个getchar()函数,用于吃掉空白字符
return 0;
}
9
NO!NO!//若不去掉空白字符,每输入一个字符会打印两次
3.将输入的大小写字母进行转换
#include<stdio.h>
int main()
{
char n=0;
while(scanf("%c",&n)!=EOF)
{
if(n>='a'&&n<='z')
{
printf("%c\n",n-32);
}
if(n>='A'&&n<='Z')
{
printf("%c\n",n+32);
}
}
return 0;
}
4.变种水仙花数(规则:把任意数字,从中间拆分成两个数字,比如1461能拆成1和461,14和61,146和1;又比如:655=6*55+65*5)
5.三角形的判断,输入三个数,若能构成三角形,等边三角输出"等边",等腰三角输出"等腰",其余三角输出"其他",反之输出"不构成三角"
#include<stdio.h>
int main()
{
int a=0;
int b=0;
int c=0;
while(scanf("%d %d %d",&a,&b,&c)==3)
{
if(a+b>c&&a+c>b&&b+c>a)
{
if(a==b&&b==c)
printf("等边三角形");
else if(a==b||b==c||a==c)
printf("等腰三角形");
}
else
printf("不构成三角形");
}
return 0;
}
持续更新中——————————————————————————————————