c编程例题
1. c语言程序设计例题
题目1
#include "stdio.h"
void main(void)
{
int n=5,m=10,i=1;
long sum=1;
for(;i<=n;i++)
{
sum*=i;
}
printf("\n5!=%d",sum);
for(i=1;i<=10;i++)
{
sum*=i;
}
printf("\n10!=%d",sum);
}
题目2
#include "stdio.h"
#include "string.h"
struct Student
{
char s_Name[25];
long n_Code;
int n_English;
int n_Math;
int n_Computer;
}student_1,student_2;
void main(void)
{
printf("\nStudent1:\nName:");
scanf("%s",&student_1.s_Name);
printf("StudentNum:");
scanf("%d",&student_1.n_Code);
printf("English Score:");
scanf("%d",&student_1.n_English);
printf("Math Score:");
scanf("%d",&student_1.n_Math);
printf("Computer Score:");
scanf("%d",&student_1.n_Computer);
printf("\nStudent2:\nName:");
scanf("%s",&student_2.s_Name);
printf("StudentNum:");
scanf("%d",&student_2.n_Code);
printf("English Score:");
scanf("%d",&student_2.n_English);
printf("Math Score:");
scanf("%d",&student_2.n_Math);
printf("Computer Score:");
scanf("%d",&student_2.n_Computer);
printf("\nStudent1:\nName:%s\nStudent Number:%d\nEnglish Score:%d\nMath Score:%d\nComputer Score:%d\n",student_1.s_Name,student_1.n_Code,student_1.n_English,student_1.n_Math,student_1.n_Computer);
printf("\nStudent2:\nName:%s\nStudent Number:%d\nEnglish Score:%d\nMath Score:%d\nComputer Score:%d\n",student_2.s_Name,student_2.n_Code,student_2.n_English,student_2.n_Math,student_2.n_Computer);
}
2. C语言编程题目
#include <stdio.h>
char *StrCat(char *s,char *t)
{
int i=0,j=0;
char *s1,*t1;
s1=s;t1=t;
for(;*s1;s1++,i++);
for(;*t1;t1++,j++);
if(i<=j)
{
for(;*t;)*s1++=*t++;*s1='\0';
return s;
}
else
{
for(;*s;)*t1++=*s++;*t1='\0';
return t;
}
}
int main(int argc, char *argv[])
{
char a[100],b[100];
scanf("%s",a);
scanf("%s",b);
printf("%s",StrCat(a,b));
return 0;
}
3. C语言编程的题目
无论是哪门程序语言都少不了对于字符串的处理,而且用好的话能帮我们解决很多数据处理等方面的问题!
下边我们就一起来看看python是如何分解并统计字符串的?
案例
输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
先上代码~
运行效果
题目详述
第一行:
s = input('请输入一个字符串: ')
定义一个输出字符串的input函数,并且将字符串赋值给变量s,其中的 为换行符,目的是为了格式好看一些,不需要的朋友可以选择去掉
第二行:
letters = 0
space = 0
digit = 0
others = 0
定义四个变量,依次是letters、space、digit、others,分别用来统计英文字符、空格、数字以及其他的个数,初始值均为0
第三行:
for c in s:
将字符S拆分,并且遍历里边的每个元素,赋值给c
第四行:
if c.isalpha():
letters += 1
isalpha是一种函数:判断字符ch是否为英文字母,若为英文字母,返回非0(小写字母为2,大写字母为1)。若不是字母,返回0。
判断拆分元素c是否是英文字母,如果是的话英文字母的统计变量letters的值加1
第五行:
elif c.isspace():
space += 1
判断:元素c是否是空格,如果是的话,空格的统计变量space的值加1
第六行:
elif c.isdigit():
digit += 1
判断:元素c是否是数字,如果是的话,数字的统计变量digit的值加1
第七行:
else:
others += 1
判断:元素c以上的都不满足,就是特殊符号,其他的统计变量others的值加1
进阶:
利用这个原理我们就轻松的实现了对于字符串的拆分统计
是不是很便捷呢
结束语
总体来说思路只要有了,以后遇到类似的问题就可以解决了,是不是发现原来Python也没有想象中的那么难!
———— e n d ————
4. C语言编程题目
#include<stdio.h>
#include<math.h>
voidmain()
{
inti,j,k,temp,b1,b2,b3,b4,a1,a2,a3,a4,a5,a6;
for(i=10;i<22;i++)
{
if((j=pow(i,3))>1000&&j<9999&&(k=pow(i,4))>100000&&k<999999)
{
temp=j;
b1=temp%10;
temp/=10;
b2=temp%10;
temp/=10;
b3=temp%10;
temp/=10;
b4=temp;
temp=k;
a1=temp%10;
temp/=10;
a2=temp%10;
temp/=10;
a3=temp%10;
temp/=10;
a4=temp%10;
temp/=10;
a5=temp%10;
temp/=10;
a6=temp;
//printf("%d%d%d ",i,j,k);
//printf("%d%d%d%d ",b4,b3,b2,b1);
//printf("%d%d%d%d%d%d ",a6,a5,a4,a3,a2,a1);
if(a1!=a2&&a1!=a3&&a1!=a4&&a1!=a5&&a1!=a6&&a1!=b1&&a1!=b2&&a1!=b3&&a1!=b4&&a2!=a3&&a2!=a4&&a2!=a5&&a2!=a6&&
a2!=b1&&a2!=b2&&a2!=b3&&a2!=b4&&a3!=a4&&a3!=a5&&a3!=a6&&a3!=b1&&a3!=b2&&a3!=b3&&a3!=b4&&a4!=a5&&a4!=a6&&a4!=b1&&
a4!=b1&&a4!=b2&&a4!=b3&&a4!=b4&&a5!=a6&&a5!=b1&&a5!=b2&&a5!=b3&&a5!=b4&&a6!=b1&&a6!=b2&&a6!=b3&&a6!=b4&&
b1!=b2&&b1!=b3&&b1!=b4&&b2!=b3&&b2!=b4&&b3!=b4)
printf("age=%d ",i);
}
}
}
题目太变态,限定变量名称 ,用数组省很多键盘输入。
5. c语言编程题
C语言编程题
1.(*)求分数序列:1/2,2/3,3/5,5/8,8/13,13/21...... 前20项的和。
main()
{float i=1,j=2,t=0,s,n,m;
for(n=1;n<=20;n++)
s=i/j,m=i,i=j,j=m+j,t=t+s;
printf("t=%f",t);
}
2.(*)从键盘输入一个字符串,再将其逆序输出。(如:输入abcde,输出edcba)
main()
{int i;
char c[10];
scanf("%s",c);
for(i=9;i>=0;i--)
printf("%c",c[i]);
}
3.(*)已知abc+cba=1333,其中a、b、c均为一位数,例如:617+716=1333, 518+815=1333,
试编程求出符合这一规律的a、b、c,并输出结果。
main()
{int a,b,c,x,y;
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=1;c<=9;c++)
{ x=100*a+10*b+c;
y=100*c+10*b+a;
if(x+y==1333)
printf("x=%d,y=%d",x,y);}
}
4.(*)利用海伦公式求三角形面积,三边长a,b,c由键盘输入。若输入的三边长不能构成
三角形,输出相应提示信息。海伦公式如下:其中s=(a+b+c)/2
三角形面积=
#include"math.h"
main()
{ float a,b,c,s,area;
scanf("%f,%f,%f",&a,&b,&c);
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
if(a+b>c&&a+c>b&&b+c>a)
printf("area=%f",area);
else
.1 .
printf("no");
}_
5.(*)编程求出1!+2!+3!+…+8!+9!+10!的值并输出。
程序1: main()
{ int i,j;
double p=1, sum=0;
for(i=1;i<=10;i++)
{ for(j=1;j<=i;j++)
p=p*i;
sum=sum+p;p=1.0;}
printf("sum=%f",sum);
}_
程序2:float fac(n)
int n;
{flo
6. C语言编程题
#include <stdio.h>
int main()
{
char c;
do
{
c=getchar();
if(c>='a'&&c<='z')
{
c+='A'-'a';
c='Z'-c+'A';
}
else if(c>='A'&&c<='Z')
{
c+='a'-'A';
c='z'-c+'a';
}
putchar(c);
}while(c!=' ');
return 0;
}
7. c语言编程例题
#include<iostream>
#include<math.h>
usingnamespacestd;
//判断一个数是否为素数
boolIsPrimeNumber(intiNum)
{
boolbRtn=true;
if(iNum<=1)
{
returnfalse;
}
intiTmp=sqrt((double)iNum);
for(inti=2;i<=iTmp;++i)
{
if((iNum%i)==0)
{
bRtn=false;
break;
}
}
returnbRtn;
}
//判断一个数是否为偶数
//true,偶数;false,奇数
boolIsEvenNumber(intiNum)
{
return((iNum%2)==0)?true:false;
}
//查找小于1000的回文素数
voidFindPalindromePrimes(intiNum)
{
boolbRst=false;
inti=2;
intiHundDigit=0,iTenDigit=0,iSingleDigit=0;
for(i;i<1000;++i)
{
if(IsPrimeNumber(i))
{
if(i<10)
{
bRst=true;
cout<<i<<"";//输出回文素数.
}
elseif((i>=10)&&(i<100))
{
iTenDigit=i/10;
iSingleDigit=i%10;
//如果个位上的数与10位上的数相等
if(iTenDigit==iSingleDigit)
{
bRst=true;
cout<<i<<"";
}
}
else
{
intiTmp=i;
iHundDigit=iTmp/100;
iTmp=iTmp%100;
iTenDigit=iTmp/10;
iSingleDigit=iTmp%10;
if((iHundDigit==iTenDigit)&&(iTenDigit==iSingleDigit))
{
bRst=true;
cout<<i<<"";
}
}
}
}
if(!bRst)
{
cout<<"没有小于1000的回文素数!"<<endl;
}
}
//查找小于100的绝对素数
voidFindAbsolutePrime(intiNum)
{
boolbRst=false;
inti=2,iTmp=0;
intiTenDigit=0,iSingleDigit=0;
for(i;i<100;++i)
{
if(IsPrimeNumber(i))
{
iTenDigit=i/10;
iSingleDigit=i%10;
iTmp=iSingleDigit*10+iTenDigit;
if(IsPrimeNumber(iTmp))
{
bRst=true;
cout<<i<<"";
}
}
}
if(!bRst)
{
cout<<"没有小于100的绝对素数!"<<endl;
}
}
//分解10~20之间的偶数
voidResolveEventNum(intiNum)
{
boolbRst=false;
inti=2,iTmp=0;
for(;i<iNum;++i)
{
if(IsPrimeNumber(i))
{
iTmp=iNum-i;
if(IsPrimeNumber(iTmp))
{
bRst=true;
cout<<iNum<<"分解为"<<i<<"+"<<iTmp<<endl;
break;
}
}
else
continue;
}
if(!bRst)
{
cout<<"不能分解为两个素数之和!"<<endl;
}
}
intmain(void)
{
intiInput=0;
cout<<"请输入一个大于1的整数:";
cin>>iInput;
if(IsEvenNumber(iInput))
{
cout<<iInput<<"是一个偶数"<<endl;
if((iInput>=10)&&(iInput<=20))
{
ResolveEventNum(iInput);
}
}
else
{
cout<<iInput<<"是一个奇数"<<endl;
cout<<"查找小于1000的回文数:"<<endl;
FindPalindromePrimes(iInput);
cout<<endl;
cout<<"查找小于100的绝对素数:"<<endl;
FindAbsolutePrime(iInput);
cout<<endl;
}
getchar();
return0;
}
附上运行结果(如果满意,麻烦设为最佳答案,做任务需要,谢谢!):
8. C语言编程题
12.int main()
{
for(int i=1;i<=9;i++)
{
for(int j=i;j<=9;j++)
cout<<i<<"*"<<j<<"="<<i*j<<" ";
cout<<endl;
}
return 0;
}
13.int main()
{int count=0;
for(int i=1000;i<10000;i++)
if(i%10==8&&i%4==0)
count++;
cout<<count<<endl;
return 0;
}
7.
#define N 5
int main()
{int fish_num0=1,flag=0,fish_num;
while(flag!=1)
{ fish_num=fish_num0;
int count=0;
for(int i=N;i>=1&&fish_num/N>0;i--)
{
fish_num=fish_num-1;
if(fish_num%N==0&&fish_num/N>0) count++;
fish_num=fish_num/N*(N-1);
}
if(count==N) flag=1;
fish_num0++;
}
cout<<fish_num0-1<<endl;
return 0;
}
这是用C++写的,在tc上运行时稍改一下输入输出函数即可!
9. C语言编程习题,急需做!
1题:
#include
<stdio.h>
#define
M
4
void
main()
{
int
suzu[M][M];
int
x,
y;
int
zu
=
0;
for(x
=
0;
x<M;
x++)
for(y
=
0;
y<M;
y++)
{
scanf("%d",&suzu[x][y]);
}
for(x
=
0;
x<M;
x++)
{
zu
=
zu
+
suzu[x][x];
}
printf("zu
i
jiao
xian
de
he
:%d\n",zu);
getch();
}
2题:
#include
<stdio.h>
void
main()
{
int
i
=
0;
int
sun
=
0;
int
su;
for(i;
i<100;
i++)
{
scanf("%d",&su);
sun
+=
su;
}
printf("sun
=
%d\n",sun);
getch();
}
3题:
30
3
54
16
7,7
4题:
(1):
6
(2):
-5,-12,-7
**
c的写法应该这样
#include
<stdio.h>
sub(int
x,
int
y,int
*z)
{
*z
=
y
-
x;
}
main(
)
{
int
a,b,c;
sub(10,5,&a);
sub(7,a,&b);
sub(a,b,&c);
printf("%d,%d,%d\n",a,b,c);
getch();
return
0;
}
-----------------------------------------------------
1.在有问题请核对提问是否正确
continue也写错。。
2.象这样的问题在简单不过
应该努力去学
网络
老岩
[email protected]
10. c语言编程题
//1.输入一个字符串和整数n,将前n个字符复制到另一个字符串中并输出。
#include<stdio.h>
void
main()
{
char
a[50];
char
b[50];
printf("输入一个字符串:\n");
int
n;
gets(a);
printf("输入一个整数\n");
scanf("%d",&n);
int
i;
for(i=0;i<n;i++)
{
b[i]=a[i];
printf("%c",b[i]);
}
printf("\n");
}