代码拉取完成,页面将自动刷新
#include<stdio.h>
#include <string.h>
//1、计算1+2+3+......+100的和。
/*
int main()
{
int i;//循环变量
int z=0;//求和变量
for(i=1;i<=100;i++)
{
z+=i;
}
printf("1+2+3+......+100=%d\n",z);//1+2+3+......+100=5050
}
*/
//2、求1+2+3+......+n的和,n由键盘输入。
/*
int main()
{
int i,n;
int z=0;
printf("请输入1+2+3+......+n中n的值:");
scanf("%d",&n);
for(i=1;i<=n;i++)
z+=i;
printf("1+2+3+......+n=%d\n",z);
}
*/
//3、下列试子的值:1-1/2+1/3-1/4+……+1/99-1/100,将结果输出。
//4、求1!+2!+3!+……+10!,将结果输出。!阶乘:小于等于该数的正整数乘积
/*
int main()
{
int i=1;
int n,x=1,z=0;
for(i=1;i<=10;i++)
{
for(n=i;n>0;n--)
x*=n;
z+=x;
x=1;
}
printf("1!+2!+3!+……+10!=%d\n",z);
//1!+2!+3!+……+10!=4037913
}
*/
//5、键盘输入3个整数,求这3个整数的最大值
/*
int main()
{
int a,b,c;
printf("请输入任意三个正整数:");
scanf("%d%d%d",&a,&b,&c);
if(a>b&&a>c)
printf("%d,%d,%d中的最大值为:%d\n",a,b,c,a);
if(b>a&&b>c)
printf("%d,%d,%d中的最大值为:%d\n",a,b,c,b);
if(c>a&&c>b)
printf("%d,%d,%d中的最大值为:%d\n",a,b,c,c);
}
*/
//6、打印出100~999之间的所有水仙花数。水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)
/*
int main()
{
int i;
int z,g,s,b;
for(i=100;i<=999;i++)
{
g=i%10;
s=i%100/10;
b=i/100;
if(i==g*g*g+s*s*s+b*b*b)
printf("%d\n",i);//153 370 371 407
}
}
*/
//7、我有1000块钱我想买100只鸡,市场上公鸡50块一只,母鸡30块一只,小鸡10块钱3只,问题我该如何去购买?列出所有购买方案(使用for循环套用的方式)
/*
int main()
{
int g,m,x;
for(g=0;g<=20;g++)
for(m=0;m<=33;m++)
for(x=0;x<=300;x++)
{
if(g+m+x==100&&50*g+30*m+10*x/3==1000)
printf("g=%d,m=%d,x=%d\n",g,m,x);
}
}
*/
/*g=0,m=25,x=75//把1000全部花掉
g=4,m=18,x=78
g=8,m=11,x=81
g=12,m=4,x=84
*/
/*
int main()
{
int g,m,x;
for(g=0;g<=20;g++)
for(m=0;m<=33;m++)
for(x=0;x<=100;x++)
{
if(g+m+3*x==100&&50*g+30*m+10*x<=1000)
printf("g=%d,m=%d,x=%d\n",g,m,3*x);
}
}
*/
/*
不一定把1000都花了
g=0,m=1,x=99
g=0,m=4,x=96
g=0,m=7,x=93
g=0,m=10,x=90
g=0,m=13,x=87
g=0,m=16,x=84
g=0,m=19,x=81
g=0,m=22,x=78
g=0,m=25,x=75
g=1,m=0,x=99
g=1,m=3,x=96
g=1,m=6,x=93
g=1,m=9,x=90
g=1,m=12,x=87
g=1,m=15,x=84
g=1,m=18,x=81
g=1,m=21,x=78
g=2,m=2,x=96
g=2,m=5,x=93
g=2,m=8,x=90
g=2,m=11,x=87
g=2,m=14,x=84
g=2,m=17,x=81
g=2,m=20,x=78
g=3,m=1,x=96
g=3,m=4,x=93
g=3,m=7,x=90
g=3,m=10,x=87
g=3,m=13,x=84
g=3,m=16,x=81
g=3,m=19,x=78
g=4,m=0,x=96
g=4,m=3,x=93
g=4,m=6,x=90
g=4,m=9,x=87
g=4,m=12,x=84
g=4,m=15,x=81
g=4,m=18,x=78
g=5,m=2,x=93
g=5,m=5,x=90
g=5,m=8,x=87
g=5,m=11,x=84
g=5,m=14,x=81
g=6,m=1,x=93
g=6,m=4,x=90
g=6,m=7,x=87
g=6,m=10,x=84
g=6,m=13,x=81
g=7,m=0,x=93
g=7,m=3,x=90
g=7,m=6,x=87
g=7,m=9,x=84
g=7,m=12,x=81
g=8,m=2,x=90
g=8,m=5,x=87
g=8,m=8,x=84
g=8,m=11,x=81
g=9,m=1,x=90
g=9,m=4,x=87
g=9,m=7,x=84
g=10,m=0,x=90
g=10,m=3,x=87
g=10,m=6,x=84
g=11,m=2,x=87
g=11,m=5,x=84
g=12,m=1,x=87
g=12,m=4,x=84
g=13,m=0,x=87
*/
//8、输入三角形的三边a,b,c,判断a,b,c,能否构成三角形,何种类型的三角形:等腰、等边、直角、等腰直角、一般。
/*
int main()
{
int a,b,c;
printf("请输入三角形的三边:\n");
scanf("%d%d%d",&a,&b,&c);
if((a+b>c)&&(a+c>b)&&(b+c>a))
{
if(a==b&&b==c)
printf("%d,%d,%d三边可以构成等边三角形\n",a,b,c);
else if((a==b)||(a==c)||(b==c))
{
if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
printf("%d,%d,%d三边可以构成等腰直角三角形\n",a,b,c);
printf("%d,%d,%d三边可以构成等腰三角形\n",a,b,c);
}
else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
printf("%d,%d,%d三边可以构成直角三角形\n",a,b,c);
else
printf("%d,%d,%d三边可以构成一般三角形\n",a,b,c);
}
else
printf("%d,%d,%d三边不能构成三角形\n",a,b,c);
}
*/
//9、输入年号,计算这一年的2月份的天数,将结果输出。
/*
int main()
{
int n;
printf("请输入年号:");
scanf("%d",&n);
if((n%400==0)||(n%4==0&&n%100!=0))//润年,能被4整除
printf("%d年的2月份有29天\n",n);
else
printf("%d年的2月份有28天\n",n);//平年
}
*/
//10、输入年月,判断这个月有多少天。
/*
int main()
{
int n,y;
printf("请输入年,月:");
scanf("%d%d",&n,&y);
switch(y)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
printf("%d年%d月有31天\n",n,y);break;
case 2:
if((n%400==0)||(n%4==0&&n%100!=0))//润年,能被4整除
printf("%d年的2月份有29天\n",n);
else
printf("%d年的2月份有28天\n",n);//平年
break;
case 4:
case 6:
case 9:
case 11:
printf("%d年%d月有30天\n",n,y);break;
default:
printf("输入有误!\n");break;
}
}
*/
//11、编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词。
/*
int main()
{
int n;
printf("请输入一个1~7之间的整数:");
scanf("%d",&n);
switch(n)
{
case 1:printf("%d的英文:one\n",n);break;
case 2:printf("%d的英文:two\n",n);break;
case 3:printf("%d的英文:three\n",n);break;
case 4:printf("%d的英文:four\n",n);break;
case 5:printf("%d的英文:five\n",n);break;
case 6:printf("%d的英文:six\n",n);break;
case 7:printf("%d的英文:seven\n",n);break;
default:
printf("输入有误!\n");break;
}
}
*/
//12、输入奖金数a,计算并输出税率、应缴税款和实得奖金数。3000以下不需要交税,3000~4000税率1%,4000~5000税率是2%,5000~10000以上是3%,10000以上5%。
/*
int main()
{
float a;
printf("请输入奖金数\n");
scanf("%f",&a);
if(a<=0)
{
printf("输入有误!\n");
}
else if(a<=3000)
{
printf("无需缴税,实得奖金:%.2f\n",a);
}
else if(a<=4000)
{
printf("税率:1%%,应缴税款:%.2f,实得奖金:%.2f\n",a*0.01,a*0.99);
}
else if(a<=5000)
{
printf("税率:2%%,应缴税款:%.2f,实得奖金:%.2f\n",a*0.02,a*0.98);
}
else if(a<=10000)
{
printf("税率:3%%,应缴税款:%.2f,实得奖金:%.2f\n",a*0.03,a*0.97);
}
else
{
printf("税率:5%%,应缴税款:%.2f,实得奖金:%.2f\n",a*0.05,a*0.95);
}
}
*/
//13、编写程序,输入两个整数,和+、-、*、/之中的任意一个运算符,输出计算结果。
/*
int main()
{
int a,b;
double z;
char c;
printf("请输入公式:\n");
scanf("%d%c%d",&a,&c,&b);
switch(c)
{
case '+':z=a+b;break;
case '-':z=a-b;break;
case '*':z=a*b;break;
case '/':z=(double)a/b;break;
}
printf("%d%c%d=%.2f\n",a,c,b,z);
}
*/
//14、编程计算:1*2*3+3*4*5+……+99*100*101的值。
//15、输入一个正整数求出它是几位数;输出原数和位数。
/*
int main()
{
int z,c;
int n=1,b=1;
printf("请输入一个正整数:\n");//100
scanf("%d",&z);
c=z;
for(n=1;n>=1;n++)
{
b*=10;
c/=10;
if(c==0)
{
break;
}
}
printf("%d是%d位数,原码为:%d\n",z,n,b-z);
}
*/
//17、有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完,请编程。
/*
int main()
{
int i=0,n=1020;
while(n>0)
{
i++;
n=n/2-2;
}
printf("%d天后能买完\n",i);//8天
}
*/
//18、猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
/*
int main()
{
int i,n=1;
for(i=9;i>=1;i--)
{
n=(n+1)*2;
}
printf("第一天共摘了%d个桃子。\n",n);//第一天共摘了1534个桃子。
}
*/
//19、有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
/*
int main()
{
int i=1,y;
int n,x=0,z=0;
printf("请输入月份:");
scanf("%d",&y);
for(n=(y-4);n>=1;n--)
x+=n;
z=(y-1)+x;
x=1;
switch(y)
{
case 1:
case 2:
z=1;break;
case 3:z=2;break;
case 4:z=3;break;
}
printf("%d个月的兔子总数为=%d\n",y,2*z);
}
*/
//20、求Sn=a+aa+aaa+…+aa…a之值,n,a由键盘输入。
/*
int main()
{
int n,a;
int i=1,m=0,z=1;
printf("请输入n,a的值:\n");
scanf("%d%d",&n,&a);
printf("S%d=",n);
for(;n>=1;n--)
{
for(i=n;i>=1;i--)
{
z*=a;
}
m+=z;
z=1;
}
printf("%d\n",m);
}
*/
/*
21、打印一个5*5的图形(原样打印)
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
*/
/*
int main()
{
char n;
int a,b,i;
printf("请输入打印图像:\n");
scanf("%d%c%d",&a,&n,&b);
for(;b>=1;b--)
{
printf(" ");
for(i=a;i>=1;i--)
{
printf("%c ",n);
}
printf("\n");
}
}
*/
//22、打印菱形
/*
int main()
{
char n='*',m=' ';
int a,b,c,d,e,f=0;
printf("请输入边长:\n");
scanf("%d",&a);//6
d=a-1;//5
e=1;
while(1)
{
for(b=d;b>=1;b--)//5 4 3 2 1 0()d -1 空格
{
printf("%c",m);
}
for(c=1;c<=e;c++)//1 2 3 4 5 6 7 *
{
if(e>a)
{
f=1;
break;
}
printf("%c%c",n,m);
}
if(d<0&&e>a)//清除空行和重复行
d++,e--;
else
printf("\n");
switch(f)//改变增减
{
case 0:d--,e++;break;
case 1:d++,e--;break;
}
if(e<1)//跳出死循环
break;
}
}
*/
//23、打印金字塔图形
/*
int main()
{
char n='*',m=' ';
int a,b,c,d,e;
printf("请输入边长:\n");
scanf("%d",&a);//6
d=a-1;//5
e=1;
while(1)
{
for(b=d;b>=1;b--)//5
{
printf("%c",m);
}
d--;
for(c=1;c<=e;c++)//1
{
if(e>a)
break;
printf("%c%c",n,m);
}
if(e>a)
break;
e++;
printf("\n");
}
}
*/
//24、打印菱形
//25、求满足1+2+3+…+n<500中最大的N,并求其和,编写程序实现
/*
int main()
{
int i;
int z=0;
for(i=1;i<500;i++)
{
z+=i;
if(z>=500)
break;
}
z-=i;
i--;
printf("1+2+3+…+n<500中最大的n为:%d,其和为:%d\n",i,z);
//1+2+3+…+n<500中最大的n为:31,其和为:496
}
*/
//26、把100~200之间的不能被3整除的数输出。
/*
int main()
{
int i;
for(i=100;i<=200;i++)
{
if(i%3)
printf("%d,\n",i);
}
}
*/
/*
100,101,103,104,106,107,109,110,112,113,115,116,
118,119,121,122,124,125,127,128,130,131,133,134,
136,137,139,140,142,143,145,146,148,149,151,152,154,
155,157,158,160,161,163,164,166,167,169,170,172,173,
175,176,178,179,181,182,184,185,187,188,190,191,193,
194,196,197,199,200
*/
//27、按以下规律翻译密码:将每一个字母变成它后面的字母,例如,将A变成B,B变成C,…,Z变成A,非字母字符不变,“!”作为电文结束标志。
/*
int main()
{
char n;
printf("请输入一个大写字母:\n");
scanf("%c",&n);
if(n>=65&&n<=90)
{
if(n==90)
n=65;
else
n++;
}
printf("%c\n",n);
}
*/
//28、输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是小写字母,则把它变成大写字母;其它字符不变,请编程。
/*
int main()
{
char n;
printf("请输入一个字母:\n");
scanf("%c",&n);
if(n>=65&&n<=90)
{
n=n+32;
}
else if(n>=97&&n<=122)
{
n=n-32;
}
printf("%c\n",n);
}
*/
//29、编程实现:计算1到100之间的奇数之和及偶数之和。
/*
int main()
{
int i;
int n,j=0,o=0;
for(i=1;i<=100;i++)
{
n=i%2;
switch(n)
{
case 0:o+=i;break;
case 1:j+=i;break;
}
}
printf("1到100之间的奇数之和为:%d,偶数之和为:%d\n",j,o);
//1到100之间的奇数之和为:2500,偶数之和为:2550
}
*/
//30、有一个两位数XY,X是十位,Y是个位;给出X+Y的值和X*Y的值;编程实现让用户猜测这个两位数十多少?根据猜测给出不同的提示。
/*
int main()
{
int g=0,s=1,n,m;
int h,j;
printf("一个两位数XY,X是十位,Y是个位,请输入X+Y的值和X*Y的值:\n");
scanf("%d%d",&h,&j);
while(s<=9)
{
while(g<=9)
{
if((s+g==h)&&(s*g==j))
{
goto h;
}
g++;
}
s++;
g=0;
}
if(s==10)
printf("输入有误!\n");
goto w;
h:
n=10*s+g;
m=10*g+s;
if(n==m)
printf("这个两位数XY是%d\n",n);
else
printf("这个两位数XY是%d或%d\n",n,m);
w:
g=0,s=1;
}
*/
//31、键盘输入的一个两位数XY,X是十位,Y是个位;请编程计算X+Y的值和X*Y的值
/*
int main()
{
int n;
int x,y;
printf("请输入的一个两位数:\n");
scanf("%d",&n);
x=n/10;
y=n%10;
printf("X+Y=%d,X*Y=%d",x+y,x*y);
}
*/
//练习:在键盘上输入一个字符串,将字符串逆序输出 “1234” ---- “4321”
/*
int main()
{
char suff[128],m;
int i,n;
gets(suff);//6
printf("%s\n",suff);
for(i=0;suff[i+1]!='\0';i++)//i最大下标
{
//7 '\0'
}
for(n=0;n<=i/2;n++)
{
m=suff[n];
suff[n]=suff[i-n];
suff[i-n]=m;
}
printf("%s\n",suff);
}
*/
/*
int main()
{
int n,i=0;//元素个数
char suff[128],m;
gets(suff);
printf("%s\n",suff);//顺序输出
while(suff[i]!='\0')
{
i++;
}
for(n=i-1;n>=0;n--)
{
printf("%c",suff[n]);//字符依次逆序输出
}
printf("\n");
for(n=0;n<=i/2;n++)
{
m=suff[n];
suff[n]=suff[i-1-n];
suff[i-1-n]=m;
}
printf("%s\n",suff);//逆序输出
}
*/
//1. 输入10个整数并将其由小到大排序输出(冒泡排序)。
/*
int main()
{
int buff[10];
int i,a,b,s;
for(i=0;i<=9;i++)
{
scanf("%d",&buff[i]);
}
for(a=0;a<9;a++)
{
for(b=0;b<9-a;b++)
{
if(buff[b]>buff[b+1])
{
s=buff[b];
buff[b]=buff[b+1];
buff[b+1]=s;
}
}
}
for(i=0;i<=9;i++)
{
printf("%d ",buff[i]);
}
}
*/
//2. 输入一行字符,统计其中单词的个数,单词之间用空格分隔。
/*
int main()
{
char suff[128];
int i=0,m=0,n=0;
printf("请输入一行单词:\n");
gets(suff);//scanf();认为空格是结束标志
while(1)
{
while (suff[i]!=' ')
{
i++;
n++;
if(suff[i]=='\0')
{
m++;
printf("第%d个单词所占字节为:%d\n",m,n);
goto h;
}
}
i++;
m++;
printf("第%d个单词所占字节为:%d\n",m,n);
n=0;
}
h:
printf("单词的个数为:%d\n",m);
printf("字符串所占字节:%d\n ",i);
}
*/
/*
int main()
{
char suff[128];
int i=0,m=0,n=0;
printf("请输入一行单词:\n");
gets(suff);//scanf();认为空格是结束标志
while(1)
{
p: while (suff[i]!=' ')
{
i++;
n++;
if(suff[i]=='\0')
{
m++;
printf("第%d个单词所占字节为:%d\n",m,n);
goto h;
}
}
if(n==0||suff[i+1]==' ')
{
i++;
goto p;
}
if(suff[i+1]!=' ')
{
if(suff[i+1]=='\0')
{
m++;
i++;
printf("第%d个单词所占字节为:%d\n",m,n);
goto h;
}
//if(suff[i]!='\0')
m++;
i++;
printf("第%d个单词所占字节为:%d\n",m,n);
}
n=0;
}
h:
printf("单词的个数为:%d\n",m);
printf("字符串所占字节:%d\n ",i);
}
*/
/*
输入一行字符,统计其中单词的个数,单词之间用空格分隔。
1.输入一行字符 “dxfd kgvf”
2.用while来判断字符串是否结束
3.查空格
*/
/*
int main(void)
{
char buff[128],i = 0,len = 0,sum = 0,a = 0,b = 0;
gets(buff); //输入一串字符串
printf("输入的字符串是:%s\n",buff);
while(buff[i] != '\0')//循环判断是否到字符串结尾
{
len++;
i++;
}
printf("字符串的长度为:%d\n",len);
i = 0;
while(buff[i] != '\0')
{// bcb
if(buff[i] != ' ')//去除前面的空格
{
for(; i < len ;i++)
{
if(buff[i] == ' ' && buff[i+1] != ' ' && buff[i+1] != '\0')
{
sum++;
}
}
}
i++;
}
printf("单词的个数为:%d\n",sum+ 1 );
}
*/
//3. 编写一个程序,将字符数组a中的全部字符复制到字符数组b中。
/*
int main()
{
char a[128],b[128];
int i=-1;
gets(a);
printf("%s\n",a);
while(1)
{
i++;
b[i]=a[i];
if(a[i]=='\0')
break;
}
printf("%s\n",b);
}
*/
// char *strncpy(char *dest, const char *src, size_t n);将后面的参数的复制给前面的参数n位
// char *strcpy(char *dest, const char *src);将后面的参数复制给前面的参数
// strlen(const char *s);查看有效元素
//4. 随机输入一个长度小于30的字符串,检测输入的字符串是否存在于"1234567890qwertyuiopasdfghjklzxcvbnm"
/*
int main()
{
char suff[]="1234567890qwertyuiopasdfghjklzxcvbnm";//37
char a[30];
int i=0,n=0;
gets(a);
while(1)
{
if(suff[i]==a[n])
{
i++;
n++;
if(a[n]=='\0')
{
printf("输入的字符串存在于“1234567890qwertyuiopasdfghjklzxcvbnm”中\n");
break;
}
}
else if(n==0)
i++;
else
{
printf("输入的字符串不存在于“1234567890qwertyuiopasdfghjklzxcvbnm”中\n");
break;
}
if(suff[i]=='\0')
{
printf("输入的字符串不存在于“1234567890qwertyuiopasdfghjklzxcvbnm”中\n");
break;
}
}
}
*/
/*
int main()
{
char suff[]="1234567890qwertyu12378iopasdfghjklzxcvbnm";//37
char a[30];
int i=0,n=0;
gets(a);
while(1)
{
if(suff[i]==a[n])
{
i++;
n++;
if(a[n]=='\0')
{
printf("输入的字符串存在于“1234567890qwertyuiopasdfghjklzxcvbnm”中\n");
break;
}
}
else
{
i++;
n=0;
}
if(suff[i]=='\0')
{
printf("输入的字符串不存在于“1234567890qwertyuiopasdfghjklzxcvbnm”中\n");
break;
}
}
}
*/
//5. 输入两个字符串,进行拼接,然后输出。
/*
int main()
{
char a[128],b[128];
int i=0,n=0;
gets(a);
gets(b);
printf("请输入两个字符串:\n");
printf("%s\n",a);
printf("%s\n",b);
while(1)
{
if(a[i]!='\0')//4
{
i++;
}
else
{
while(b[n]!='\0')
{
a[i]=b[n];
i++;
n++;
}
a[i]=b[n];
break;
}
}
printf("拼接为:%s\n",a);
}
*/
// #include <string.h>
// char *strcat(char *dest, const char *src);
// char *strncat(char *dest, const char *src, size_t n);
//6. 输入10个整数,求这10个整数中的最大值
/*
//判断10个字符:0~9 a~z A~Z
int main()
{
char suff[128],a,b;
int i=0,c;
printf("请输入10个整数:\n");
gets(suff);
a=suff[i];
b=suff[i++];
while(i<9)
{
i++;// 2 3 4 5 6 7 8 9
c=a>=b;
switch(c)//0 1 2 3 4 5 6 7 8
{
case 0:a=suff[i];break;
case 1:b=suff[i];break;
}
}
c=a>=b;
switch(c)//判断(0 1 2 3 4 5 6 7 8)最大值 比较 9
{
case 0:printf("最大值为:%c\n",b);break;
case 1:printf("最大值为:%c\n",a);break;
}
}
*/
/*
int main()
{
int suff[10],a,b;
int i,c;
printf("请输入10个整数:\n");
for(i=0;i<=9;i++)
{
scanf("%d",&suff[i]);
}
i=0;
a=suff[i];
b=suff[i++];
while(i<9)
{
i++;
c=(a>=b);
switch(c)
{
case 0:a=suff[i];break;
case 1:b=suff[i];break;
}
}
c=a>=b;
switch(c)
{
case 0:printf("最大值为:%d\n",b);break;
case 1:printf("最大值为:%d\n",a);break;
}
}
*/
/*
int main()
{
int suff[10],a,b;
int i,c;
printf("请输入10个整数:\n");
for(i=0;i<=9;i++)
{
scanf("%d",&suff[i]);
}
i=0;
a=suff[i];
b=suff[i++];
for(i++;i<=10;i++)
{
if(a>=b)
{
if(i==10)
printf("最大值为:%d\n",a);
b=suff[i];
}
else
{
a=suff[i];
if(i==10)
printf("最大值为:%d\n",b);
}
}
}
*/
//7. 将10个整数放到一维数组中,输出该数组中的最大值和最小值的下标,然后将最小值与和数组中的第一个元素对换,最大值与最后一个元素对换位置。
/*
int main()
{
int suff[10];
int i,a,b,c,d,e,f,x,m=0,n=1,u=0,w=1;
for(i=0;i<=9;i++)
{
scanf("%d",&suff[i]);
}
a=suff[0];
b=suff[1];
e=suff[0];
f=suff[1];
for(i=2;i<=10;i++)
{
c=a>=b;
d=e<=f;
switch(c)
{
case 0:
if(i==10)
{
x=suff[9];
suff[9]=b;
suff[n]=x;
printf("最大值为:%d,最大值下标为:%d\n",b,n);
}
a=suff[i];
m=i;
break;
case 1:
if(i==10)
{
x=suff[9];
suff[9]=a;
suff[m]=x;
printf("最大值为:%d,最大值下标为:%d\n",a,m);
}
b=suff[i];
n=i;
break;
}
switch(d)
{
case 0:
if(i==10)
{
x=suff[0];
suff[0]=f;
suff[w]=x;
printf("最小值为:%d,最小值下标为:%d\n",f,w);
}
e=suff[i];
u=i;
break;
case 1:
if(i==10)
{
x=suff[0];
suff[0]=e;
suff[u]=x;
printf("最小值为:%d,最小值下标为:%d\n",e,u);
}
f=suff[i];
w=i;
break;
}
}
for(i=0;i<=9;i++)
{
printf("%d ",suff[i]);
}
}
*/
//8. 输入10个数,统计非负数的个数、并计算非负数的和。0~9
/*
int main()
{
int suff[10];//只能储存10位数
int a,b=0,i=0,z=0,h=0,n=0;
printf("请输入10个数:\n");
for(i=0;i<=9;i++)
{
scanf("%d",&suff[i]);
}
i=0;
while(i<=9)
{
a=suff[i]>=0;
switch(a)
{
case 0:n++;h+=suff[i];break;//负数
case 1:b++;z+=suff[i];break;//非负数
}
i++;
}
printf("负数的个数为:%d,负数的和为:%d\n",n,h);
printf("非负数的个数为:%d,非负数的和为:%d\n",b,z);
}
*/
/*
for(i=0;i<=9;i++)
{
if(suff[i]>=0)//非负数
{
b++;
z=z+suff[i];
}
else//负数
{
n++;
h=h+suff[i];
}
}
*/
//9. 从键盘输入一个字符串,判断输入字符串中数字的个数、大写字母的个数、小写字母的个数,以*作为字符串输入结束的标志。
/*
int main()
{
char suff[128];
int i=0,m=0,n=0,s=0;
printf("请输入一个字符串:\n");
gets(suff);//scanf();认为空格是结束标志
while (suff[i]!='*')
{
if(suff[i]>='0'&&suff[i]<='9')
{
s++;
}
else if(suff[i]>='a'&&suff[i]<='z')
{
m++;
}
else if(suff[i]>='A'&&suff[i]<='Z')
{
n++;
}
i++;
if (suff[i]=='\0')
break;//如果忽略‘\0’,输入字符串没有*,输出为s随机数
}
printf("输入字符串中数字的个数为:%d大写字母的个数为:%d小写字母的个数为:%d\n",s,n,m);
}
*/
//10. 输入两个字符串,对比这两个字符串是否相同。
/*
int main()
{
char a[128],b[128];
int i=0;
gets(a);
gets(b);
while(1)
{
if(a[i]==b[i])
{
if(a[i]=='\0')
{
printf("这两个字符串相同\n");
break;
}
i++;
}
else
{
printf("这两个字符串不相同\n");
break;
}
}
}
/* #include <string.h>比较 相同返回0 区分大小写
int strcmp(const char *s1, const char *s2);
int strncmp(const char *s1, const char *s2, size_t n);
*/
/*
1. 将下列二维数组行列互换
1 2 3 1 4 7
4 5 6 > 2 5 8
7 8 9 3 6 9
*/
/*
int main()
{
int buff[3][3]={
1,2,3,
4,5,6,
7,8,9
};
int a,b,i;
for(a=0;a<3;a++)//hang
{
for(b=a;b<3;b++)//lie
{
i=buff[a][b];
buff[a][b]=buff[b][a];
buff[b][a]=i;
}
}
for(a=0;a<3;a++)//hang
{
for(b=0;b<3;b++)//lie
{
printf("%d ",buff[a][b]);
}
printf("\n");
}
}
*/
/*
int main()
{
int buff[3][3];
int a,b,i;
for(a=0;a<3;a++)//hang
{
for(b=0;b<3;b++)//lie
{
scanf("%d",&buff[a][b]);
}
}
for(a=0;a<3;a++)//hang
{
for(b=a;b<3;b++)//lie
{
i=buff[a][b];
buff[a][b]=buff[b][a];
buff[b][a]=i;
}
}
for(a=0;a<3;a++)//hang
{
for(b=0;b<3;b++)//lie
{
printf("%d ",buff[a][b]);
}
printf("\n");
}
}
*/
//2. 输入一个字符串,判断是否是回文。(回文:这个字符串顺读和反读是一样的。如“abcba”和”123321”
/*
int main()
{
char suff[128];
int i=0;
int m,n;
printf("请输入一个字符串:\n");
gets(suff);
printf("%s\n",suff);
while(suff[i]!='\0')//元素个数
{
i++;
}
for(n=0;n<=i/2;n++)
{
if(suff[n]==suff[i-1-n])
{
if(n==i/2)
{
printf("这个字符串是回文!\n");
break;
}
}
else
{
printf("这个字符串不是回文!\n");
break;
}
}
}
*/
//1、输入10个整数到数组中,求所有元素之和。
/*
int main()
{
int suff[10];
int i,z=0;
for(i=0;i<=9;i++)
{
scanf("%d",&suff[i]);
}
for(i=0;i<=9;i++)
{
z+=suff[i];
}
printf("所有元素之和为:%d\n",z);
}
*/
//2、输入10个整数,求这10个整数中的最大值
/*
int main()
{
int suff[10];
int i,a=0,b=1;
for(i=0;i<=9;i++)
{
scanf("%d",&suff[i]);
}
for(i=2;i<=10;i++)
{
if(suff[a]>=suff[b])
{
b=i;
if(i==10)
printf("这10个整数中的最大值为:%d\n",suff[a]);
}
else
{
a=i;
if(i==10)
printf("这10个整数中的最大值为:%d\n",suff[b]);
}
}
}
*/
//3、输入10个整数存入数组中,将数组中下标为1的元素与下标为7的元素交换位置。
/*
int main()
{
int buff[10];
int i,a;
printf("请输入10个整数:\n");
for(i=0;i<=9;i++)
{
scanf("%d",&buff[i]);
}
a=buff[1];
buff[1]=buff[7];
buff[7]=a;
printf("交换位置后:");
for(i=0;i<=9;i++)
{
printf("%d ",buff[i]);
}
printf("\n");
}
*/
//4、将10个整数放到一维数组中,输出该数组中的最大值和最小值的下标,然后将最小值与和数组中的第一个元素对换,最大值与最后一个元素对换位置。
/*
int main()
{
int buff[10];
int i,a=0,b=1,x=1,n=0,m;
for(i=0;i<=9;i++)
{
scanf("%d",&buff[i]);
}
for(i=2;i<=10;i++)
{
if(buff[a]>=buff[b])
{
b=i;
if(i==10)
{
printf("最大值的下标为:%d\n",a);
m=buff[9];
buff[9]=buff[a];
buff[a]=m;
}
}
else
{
a=i;
if(i==10)
{
printf("最大值的下标为:%d\n",b);
m=buff[9];
buff[9]=buff[b];
buff[b]=m;
}
}
if(buff[n]<buff[x])
{
x=i;
if(i==10)
{
printf("最小值的下标为:%d\n",n);
m=buff[0];
buff[0]=buff[n];
buff[n]=m;
}
}
else
n=i;
if(i==10)
{
printf("最小值的下标为:%d\n",x);
m=buff[0];
buff[0]=buff[x];
buff[x]=m;
}
}
printf("对换位置后:");
for(i=0;i<=9;i++)
{
printf("%d ",buff[i]);
}
printf("\n");
}
*/
//5、输入10个整数并将其由小到大排序输出(冒泡排序)。
/*
int main()
{
int buff[10];
int i,m,n;
for(i=0;i<=9;i++)
{
scanf("%d",&buff[i]);
}
for(m=0;m<9;m++)
{
for(i=0;i<9-m;i++)
{
if(buff[i]>buff[i+1])
{
n=buff[i];
buff[i]=buff[i+1];
buff[i+1]=n;
}
}
}
for(i=0;i<=9;i++)
{
printf("%d ",buff[i]);
}
printf("\n");
}
*/
//6、输入一个字符串求字符串中大写、小写、数字、空格以及其他字符的个数。
/*
int main()
{
char buff[128];
int d=0,x=0,s=0,k=0,q=0,i=0,c;
gets(buff);
while(1)
{
if(buff[i]>='A'&&buff[i]<='Z')
c=0;
else if(buff[i]>='a'&&buff[i]<='z')
c=1;
else if(buff[i]>='0'&&buff[i]<='9')
c=2;
else if(buff[i]==' ')
c=3;
else
c=4;
if(buff[i]=='\0')
break;
i++;
switch(c)
{
case 0:d++;break;
case 1:x++;break;
case 2:s++;break;
case 3:k++;break;
case 4:q++;break;
}
}
printf("字符串中大写:%d,小写:%d,数字:%d,空格:%d,其他字符:%d\n",d,x,s,k,q);
}
*/
//7、求一个3*3的整型矩阵对角线元素之和。将原矩阵和求出的和输出
/*
int main()
{
int buff[3][3];
int a,b,i,z=0;
for(a=0;a<3;a++)
{
for(b=0;b<3;b++)
{
scanf("%d",&buff[a][b]);
}
}
printf("原矩阵:\n");
for(a=0;a<3;a++)
{
for(b=0;b<3;b++)
{
printf("%d ",buff[a][b]);
}
printf("\n");
}
for(a=0;a<3;a++)
{
for(b=0;b<3;b++)
{
if(a==b||a+b==2)
{
if(a==b&&a+b==2)
z+=buff[a][b];
z+=buff[a][b];
}
}
}
printf("整型矩阵对角线元素之和:%d\n",z);
}
*/
//8、求一个4*4的矩阵各行元素的平均值、各列元素的平均值;将原矩阵和求出的平均值全部输出。
/*
int main()
{
int buff[4][4];
int a,b,h=0,s=0;
for(a=0;a<4;a++)
{
for(b=0;b<4;b++)
{
scanf("%d",&buff[a][b]);
}
}
printf("原矩阵\n");
for(a=0;a<4;a++)
{
for(b=0;b<4;b++)
{
printf("%d ",buff[a][b]);
}
printf("\n");
}
for(a=0;a<4;a++)
{
for(b=0;b<4;b++)
{
h+=buff[a][b];
}
printf("第%d行的平均值:%.2f\n",a,h/4.0);
h=0;
}
for(b=0;b<4;b++)
{
for(a=0;a<4;a++)
{
s+=buff[a][b];
}
printf("第%d列的平均值:%.2f\n",b,s/4.0);
s=0;
}
}
*/
//9、求一个4*4的矩阵各列元素的最大值,各行元素的最大值;将原矩阵和求出的最大值全部输出。
/*
int main()
{
int buff[4][4];
int a,b,h=0,s=0;
for(a=0;a<4;a++)
{
for(b=0;b<4;b++)
{
scanf("%d",&buff[a][b]);
}
}
printf("原矩阵\n");
for(a=0;a<4;a++)
{
for(b=0;b<4;b++)
{
printf("%d ",buff[a][b]);
}
printf("\n");
}
for(a=0;a<4;a++)
{
for(b=0;b<3;b++)
{
if(buff[a][b]>buff[a][b+1])
{
h=buff[a][b];
}
else
{
h=buff[a][b+1];
}
}
printf("第%d行的最大值:%d\n",a,h);
}
for(b=0;b<4;b++)
{
for(a=0;a<3;a++)
{
if(buff[a][b]>buff[a+1][b])
{
s=buff[a][b];
}
else
{
s=buff[a+1][b];
}
}
printf("第%d列的平均值:%d\n",b,s);
}
}
*/
//10、输入3个字符串,统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。(要求使用二维数组保存字符串)
/*
int main()
{
char buff[3][100];
int a,b,d=0,x=0,s=0,k=0,q=0;
printf("请输入3个字符串:\n");
for(a=0;a<3;a++)
{
for(b=0;b<100;b++)
{
scanf("%c",&buff[a][b]);
if(buff[a][b]>='A'&&buff[a][b]<='Z')
d++;
else if(buff[a][b]>='a'&&buff[a][b]<='z')
x++;
else if(buff[a][b]>='0'&&buff[a][b]<='9')
s++;
else if(buff[a][b]==' ')
k++;
else
q++;
if(buff[a][b]==10)
break;
}
}
printf("字符串中大写:%d,小写:%d,数字:%d,空格:%d,其他字符:%d\n",d,x,s,k,q);
}
*/
int main()
{
char i;
scanf("%c",&i);
printf("%d\n",i);
}
//11、编程序求出两个3*4矩阵的和并将原矩阵和求出的和矩阵按原矩阵的形式分别输出。
/*
int main()
{
int a[3][4],b[3][4];
int x,y,z;
printf("请输入两个3*4矩阵:\n");
for(x=0;x<3;x++)
{
for(y=0;y<4;y++)
{
scanf("%d",&a[x][y]);
}
}
for(x=0;x<3;x++)
{
for(y=0;y<4;y++)
{
scanf("%d",&b[x][y]);
}
}
printf("原矩阵a:\n");
for(x=0;x<3;x++)
{
for(y=0;y<4;y++)
{
printf("%d",a[x][y]);
}
printf("\n");
}
printf("原矩阵b:\n");
for(x=0;x<3;x++)
{
for(y=0;y<4;y++)
{
printf("%d",b[x][y]);
}
printf("\n");
}
printf("两个3*4矩阵的和a+b:\n");
for(x=0;x<3;x++)
{
for(y=0;y<4;y++)
{
printf("%d",a[x][y]+b[x][y]);
}
printf("\n");
}
}
*/
//12将一个3*3的矩阵转置,转置矩阵输出。
/*
int main()
{
int buff[3][3];
int a,b,i;
for(a=0;a<3;a++)//hang
{
for(b=0;b<3;b++)//lie
{
scanf("%d",&buff[a][b]);
}
}
for(a=0;a<3;a++)//hang
{
for(b=a;b<3;b++)//lie
{
i=buff[a][b];
buff[a][b]=buff[b][a];
buff[b][a]=i;
}
}
for(a=0;a<3;a++)//hang
{
for(b=0;b<3;b++)//lie
{
printf("%d ",buff[a][b]);
}
printf("\n");
}
}
*/
//13输入一个3*3矩阵数组,使用冒泡法对其进行排序。
/*
int main()
{
int buff[3][3];
int a,b,i,m;
for(a=0;a<3;a++)//hang
{
for(b=0;b<3;b++)//lie
{
scanf("%d",&buff[a][b]);
}
}
printf("原矩阵buff:\n");
for(a=0;a<3;a++)//hang
{
for(b=0;b<3;b++)//lie
{
printf("%d ",buff[a][b]);
}
printf("\n");
}
for(i=0;i<8;i++)
{
for(a=0;a<3;a++)//hang
{
for(b=0;b<2;b++)//lie
{
if(buff[a][b]>buff[a][b+1])//00>01;01>02;02>10;10>11,11>12,12>20,20>21,21>22
{
m=buff[a][b];
buff[a][b]=buff[a][b+1];
buff[a][b+1]=m;
}
}
if(a<2)
{
if(buff[a][b]>buff[a+1][0])//00>01;01>02;02>10;10>11
{
m=buff[a][b];
buff[a][b]=buff[a+1][0];
buff[a+1][0]=m;
}
}
}
}
printf("冒泡排序buff:\n");
for(a=0;a<3;a++)//hang
{
for(b=0;b<3;b++)//lie
{
printf("%d ",buff[a][b]);
}
printf("\n");
}
}
*/
/*14、打印如图所示的杨辉三角,要求打印出n行,n由键盘输入。
1 -----0
1 1 -----1
1 2 1 -----2
1 3 3 1 -----3
1 4 6 4 1
1 5 10 10 5 1
………
*/
/*
int main()
{
int buff[128][128]={0};
int a,b,i,n,m=1;
scanf("%d",&n);
buff[0][0]=m;
for(a=0;a<n;a++)//hang
{
for(b=0;b<a+1;b++)//lie
{
buff[a][b]=m;
printf("%d ",buff[a][b]);
m=buff[a-1][b]+buff[a-1][b+1];
}
m=1;
printf("\n");
}
}
*/
/*
*/
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。