編寫程序,輸入一行字符,分別統(tǒng)計其中的大寫字母個數(shù)和小寫字母個數(shù)以及數(shù)字個數(shù)。
創(chuàng)新互聯(lián)建站自2013年起,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站制作、做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元鷹潭做網(wǎng)站,已為上家服務(wù),為鷹潭各地企業(yè)和個人服務(wù),聯(lián)系電話:18980820575#inclde
int main()
{char a[3];
char str;
int i;
int b[5]={0};
gets(a);
for(i=0;(str=a[i])!='\0';i++)
{
if(str>='A'&&str<='Z')
b[0]++;
else if(str>='a'&&str<='z')
b[1]++;
else if(str>='0'&&str<='9')
b[2]++;
}
printf("大寫字母=%d\n",b[0]);
printf("小寫字母=%d\n",b[1]);
printf("數(shù)字=%d\n",b[2]);
return 0;
}
水仙花數(shù),
int main(){
int i = 0;
for (i = 100; i< 1000; i++){
int a = i % 10;//獲得個位
int b = i / 10 % 10;//獲得十位
int c = i / 100;//獲得百位
if (a*a*a + b*b*b + c*c*c == i)
printf("水仙花數(shù):%d\n", i);
}
return 0;
}
求5×5矩陣兩條對角線上的各元素之和。
#include
int main()
{
int i,j,sum1,sum2,matrix[5][5];
sum1=0,sum2=0;
printf("請為該矩陣輸入元素:");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
scanf("%d",&matrix[i][j]);
for(i=0,j=0;i<5;i++,j++)
sum1+=matrix[i][j];
for(i=4,j=0;i>=0;i--,j++)
sum2+=matrix[i][j];
printf("主對角線上元素的和為:%d\n斜對角線上的元素的和為:%d\n",sum1,sum2);
return 0;
}
輸出3~100以內(nèi)的所有素數(shù),每行輸出5個值。
#include
int main()//3-100的素數(shù)
{
int i, j, n = 0;
for (j = 3; j<= 100; j++)
{
for (i = 2; i<= j - 1; i++)
{
if (j%i == 0)
break;
}
if(i >= j)
{
n++;
printf("%d ", i);
if (n % 5 == 0)
printf("\n"); ?
定義學生結(jié)構(gòu)體類型,成員包括學號、姓名、3門課程的成績、平均成績。用一個函數(shù)實現(xiàn)5個學生數(shù)據(jù)(包括學號、姓名、3門課程的成績)的輸入,用另一個函數(shù)負責求每個學生三門課程的平均成績,再用一個函數(shù)求出平均分最高的學生的序號。要求在主函數(shù)中輸出平均分最高的學生的數(shù)據(jù)。
#include
struct Student
{? ?
? int num;? ?char name[20];? ??float score[3];? ?float aver;? ?
};
int main()
{
?void input(struct Student stu[]);? ?
?int max(struct Student stu[]);? ? ?
?void aver(struct Student *stu);? ?
?struct Student stu[5],*p=stu;
?int i;? ?
?input(p);
?aver(p);? ?
?i=max(p);
?printf("學號:%d\n姓名:%s\n成績:%f %f %f\n平均成績:%f\n",stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].aver);? ?
?return 0;
}void input(struct Student stu[])? ?
{??int i;
?printf("請輸入各學生的信息:學號、姓名、三門課成績:\n");
?for(i=0;i<5;i++)
?scanf("%d %s %f %f %f",&stu[i].num,stu[i].name,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);? ?
}
int max(struct Student stu[])? ?
{int i,m=0;? ?
for(i=1;i<5;i++)
if (stu[i].aver>stu[m].aver) m=i;? ? ?
return m;? ?
}
void aver(struct Student *stu)? ?
{??int i;?
for(i=0;i<5;i++)?
stu[i].aver=(stu[i].score[0]+stu[i].score[1]+stu[i].score[2])/3;
}
)學生成績統(tǒng)計:先輸入某班級學生總?cè)藬?shù),后輸入該班每個學生的成績,要求計算并輸出該班學生的平均成績、最高成績和最低成績。要求使用動態(tài)內(nèi)存分配來實現(xiàn)。
#include
#include
int main()
{
float *p,max=-1,min=101,aver=0;
int i,num;
scanf("%d",&num);
p=(float *)calloc(sizeof(float),num);
for(i=0;i { scanf("%f",p+i); if(*(p+i)>max) ? max=*(p+i); ? else if(*(p+i) min=*(p+i); ? aver+=*(p+i); } aver/=num; printf("平均分:%f最高分:%f最低分:%f\n",aver,max,min);? return 0; } 定義并調(diào)用自定義函數(shù)void mystrncpy(char *t,char *s,int n),使用該函數(shù)實現(xiàn)字符串復制:輸入一個字符串s和一個正整數(shù)n,將字符串s中從頭開始的n個字符復制到字符串t中。要求在主函數(shù)中輸入字符串s,并輸出字符串s和字符串t。 #include void mystrncpy(char *t,char *s,int n) { int i; for(i=0;i ?if((t[i]=s[i])=='\0') ?return; ? t[i]='\0'; ? return; } int main() { char t[100],s[]="I love china"; mystrncpy(t,s,10); printf("%s\n",t); return 0; } 一個數(shù)組中的n個值已經(jīng)按升序排列存放,輸入一個數(shù),編程查找是否有該數(shù),有則顯示其所在的位置,沒有則顯示 “No? Found”,通過指針實現(xiàn)。 #include int main() { ?int j,a[]={0,1,2,3,4,5,6,7,8,9},*p=a; ?scanf("%d",&j); ?for(;p if(*p==j) { printf("%d",p-a+1); break; } ?if(p==a+10) printf("Not Found"); ?return 0; } 有兩個磁盤文件dfileA.txt和dfileB.txt,各存放一行字母(不多于80個),現(xiàn)要求把兩個文件中的信息合并(按照字母順序排列),輸出到一個新文件dfileC.txt中。 #include #include #include int main() { ?FILE *fp1,*fp2,*fp3; ?char ch,str1[160],str2[80]; ?int i,j; ?if((fp1=fopen("dfileA.txt","r"))==NULL) ?{ printf("file open error!"); exit(0); ?} ?if((fp2=fopen("dfileB.txt","r"))==NULL) ?{ printf("file open error!"); exit(0); ?} ?if((fp3=fopen("dfileC.txt","w"))==NULL)· · ?{ printf("file open error!"); exit(0); ?} ?i=0; ?while(!feof(fp1)) ?str1[i++]=fgetc(fp1); ?str1[i]='\0'; ?printf("%s\n",str1); ?i=0; ?while(!feof(fp2)) ?str2[i++]=fgetc(fp2); ?str1[i]='\0'; ?printf("%s\n",str2); ?strcat(str1,str2); ?printf("%s\n",str1); ? ?for(i=0;i ?for(j=0;j if(str1[j]>str1[j+1]) { ch=str1[j]; str1[j]=str1[j+1]; str1[j+1]=ch; } ?} ?fputs(str1,fp3); ?fclose(fp1); ?fclose(fp2); ?fclose(fp3); ?return 0; } 輸入3個正整數(shù),判斷是否能夠構(gòu)成三角形,如果能則計算三角形的周長和面積,否則輸出“不能構(gòu)成三角形!”。 我的答案: #include #include int main(){ double a,b,c,s,area; scanf("%1f %1f %1f",&a,&b&c); if(a+b>c&&a+c>b&&c+b>a){ s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c); printf("area=%1f",area); } else printf("不能構(gòu)成三角形!"); return 0; } 學校有近千名學生,在操場上排隊,5人一行余2人,7人一行余3人,3人一行余1人。編寫程序,求該校的學生人數(shù)。 #include main(){ int i; for(i=950;i<=1150;i++){ printf("%d\n",i); }} return 0;} mian() { int a[5],max,min,i,j,k; for(i=0;i<5;i++) scanf("%d",&a[i]); min=a[0]; for(i=1;i<5;i++) if(a[i] {min=a[i]; k=i;} max=a[0]; for(i=1;i<5;i++) if(a[i]>max) {max=a[i]; j=i;} a[k]=max; a[j]=min; printf("%3d",k);//最小值輸出 printf("%3d",j);//大值輸出 for(i=0;i<5;i++) printf("%d",a[i]); } 6. (簡答題,8.5分)編寫一個書名排序程序,輸入10個書名并存入一個二維數(shù)組,用函數(shù)void sortstring( char *name[] , int n)實現(xiàn)它們的字典順序。 #include "stdio.h" 逆序排列 #include int main(){ void sort(int a[],int n); //函數(shù)聲明 int a[20]={0},i,num=0; int *p=a; //定義一個指針變量 scanf("%d",&num); for(i=0;i scanf("%d",p++); p=a; sort(p,num); for(i=0,p=a;i printf("%d,",*p++); return 0; } void sort(int a[],int n){ int i,t; for(i=0;i t=a[i]; a[i]=a[n-i-1]; a[n-i-1]=t; } } )編寫自定義函數(shù),實現(xiàn)如下功能:一個數(shù)組有n個整數(shù),使前面各數(shù)順序向后移動m個位置,移出的數(shù)再從開頭移入。要求在主函數(shù)中輸入n的值,由隨機函數(shù)rand()產(chǎn)生n個整數(shù)存入數(shù)組,調(diào)用自定義函數(shù)后,在主函數(shù)中輸出調(diào)整后的n個數(shù)。 正確答案: #include #include #include void move(int arry[],int n,int m); int main() { int arry[100],n,m,temp,i,j; srand(time(NULL)); scanf("%d",&n); for(i=0;i { ?printf("%d ",arry[i]); } ? scanf("%d",&m); ? printf("\n"); ? move(arry,n,m); ? for(i=0;i ? printf("%d ",arry[i]); ?? ? return 0; } void move(int arry[],int n,int m) { int temp,i,j; for(i=0;i ? { ? temp=arry[n-1]; ? for(j=n-1;j>0;j--) ?arry[j]=arry[j-1]; ? arry[0]=temp; ? } } 同構(gòu)數(shù) #include int main() {int i;for(i=1; i<100; i++){if(i*i%10==i||i*i%100==i){ printf("%-4d",i); }} return 0; } 冒泡排序 #include int main() { int i,j,t,a[10]; printf("輸入10個整數(shù):\n"); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<9;i++) //變量i僅代表比較的趟數(shù)(n-1)趟 for(j=0;j<9-i;j++) if(a[j]>a[j+1]) //相鄰兩個數(shù)相互比較 { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } for(i=0;i<10;i++) printf("%5d",a[i]); printf("\n"); return 0; } 選擇排序 #include int main() { int i,j,t,a[10]; printf("請輸入10個整數(shù):\n"); for(i=0;i<10;i++) scanf("%d",&a[i]); ???//輸入10個整數(shù)存到數(shù)組里 for(i=0;i<9;i++) for(j=i+1;j<10;j++) if(a[i]>a[j]) ????//如果前一個數(shù)比后一個大,則調(diào)換值 { t=a[i]; a[i]=a[j]; a[j]=t; } for(i=0;i<10;i++) printf("%d ?",a[i]); printf("\n"); return 0; } 插入排序 #include int main() { void insert(int a[],int first,int last); int i,a[10]; printf("輸入10個整數(shù):\n"); for(i=0;i<10;i++) scanf("%d",&a[i]); insert(a,0,9); for(i=0;i<10;i++) printf("%5d",a[i]); printf("\n"); return 0; } void insert(int a[],int first,int last) { int i,j,t; for(i=first+1;i<=last;i++) { t=a[i]; j=i-1; while((j>=0) && (a[j]>t))//與已排序的數(shù)逐一比較,大于t時,該數(shù)移后 { a[j+1]=a[j]; j--; } ?a[j+1]=t; } } 矩陣裝置 //3*3矩陣的轉(zhuǎn)置 void Print(int a[][3]){ int i = 0, j = 0; for (i = 0; i< 3; i++){ for (j = 0; j< 3; j++){ printf("%d ", a[i][j]); } printf("\n"); } printf("\n"); } int main(){ int a[3][3] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int i = 0, j = 0; printf("轉(zhuǎn)置之前=============\n"); Print(a); //轉(zhuǎn)置 for (i = 0; i< 3; i++){ for (j = 0; j< i; j++){ int t = a[i][j]; a[i][j] = a[j][i]; a[j][i] = t; } } printf("轉(zhuǎn)置之后=============\n"); Print(a); return 0; } 目錄 輸入5個整數(shù),找出大數(shù)和最小數(shù)所在的位置,并把兩者對調(diào) ,然后輸出調(diào)整后的5個數(shù)。 你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
if(i%5==2&&i%7==3&&i%3==1){
#include "string.h"
void sort(char (*name)[20],int n){
int i,j,k;
char t[20];
for(i=0;i
for(k=i,j=k+1;j
if(k!=i){
strcpy(t,name[k]);
strcpy(name[k],name[i]);
strcpy(name[i],t);
}
}
}
文章名稱:c語言編程題-創(chuàng)新互聯(lián)
URL標題:http://weahome.cn/article/hegsi.html