
一個C語言入門初學者如何學程式碼,讀程式碼和寫程式碼,我想學程式碼不知道方向誰能給我一個方向?對於c語言來說,要記得東西其實不多,基本上就是幾個常用語句加一些關鍵字而已。你所看到的那些幾千甚至上萬行的程式碼,都是用這些語句和關鍵字來重複寫的。只是他們邏輯功能不一樣,那如何快速的上手C語言程式碼,建議多看多寫。
用C語言輸出9*9成法口訣。共9行9列,i控制行,j控制列。

下面程式的功能是將一個4 ×4的陣列進行逆時針旋轉90度後輸出,要求原始數組的資料隨機輸入,新數組以4行4列的方式輸出,請在空白處完善程式。

有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少?
兔子的法則為數列1,1,2,3,5,8,13,21…

判斷101-200之間有多少個質數,並輸出所有質數及質數的個數。
程式分析:判斷質數的方法:用一個數分別去除2到sqrt(這個數),如果能被整除,則表示此數不是質數,反之是質數。

一個數如果剛好等於它的因子之和,這個數就稱為「完數」。例如6=1+2+3.程式找出1000以內的所有完數。

程式列印直角楊輝三角形

透過鍵盤輸入3位學生4門課程的成績,分別求每位學生的平均成績和每門課程的平均成績。要求所有成績放入一個4行5列的陣列中,輸入時同一人資料間用空格,不同人用回車其中最後一列和最後一行分別放每個學生的平均成績、每門課程的平均成績及班級總平均分。
#include <stdio.h>
#include <stdlib.h>
main()
{ float a[4][5],sum1,sum2;
int i,j;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%f",&a[i][j]);
for(i=0;i<3;i++)
{ sum1=0;
for(j=0;j<4;j++)
sum1+=a[i][j];
a[i][4]=sum1/4;
}
for(j=0;j<5;j++)
{ sum2=0;
for(i=0;i<3;i++)
sum2+=a[i][j];
a[3][j]=sum2/3;
}
for(i=0;i<4;i++)
{ for(j=0;j<5;j++)
printf("%6.2f",a[i][j]);
printf("\n");
}
}完善程序,實現將輸入的字串反序輸出,如輸入windows 輸出swodniw。

下面程式的功能是從字元陣列s中刪除存放在c中的字元。

寫一個void sort(int *x,int n)實作將x數組中的n個資料從大到小排序。 n及數組元素在主函數中輸入。將結果顯示在螢幕上並輸出到檔案p9_1.out中
#include<stdio.h>
void sort(int *x,int n)
{
int i,j,k,t;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(x[j]>x[k]) k=j;
if(k!=i)
{
t=x[i];
x[i]=x[k];
x[k]=t;
}
}
}
void main()
{FILE *fp;
int *p,i,a[10];
fp=fopen("p9_1.out","w");
p=a;
printf("Input 10 numbers:");
for(i=0;i<10;i++)
scanf("%d",p++);
p=a;
sort(p,10);
for(;p<a+10;p++)
{ printf("%d ",*p);
fprintf(fp,"%d ",*p); }
system("pause");
fclose(fp);
}#已知數組a中的元素已按由小到大順序排列,以下程式的功能是將輸入的一個數插入數組a中,插入後,數組a中的元素仍然由小到大順序排列

编写函数replace(char *s,char c1,char c2)实现将s所指向的字符串中所有字符c1用c2替换,字符串、字符c1和c2均在主函数中输入,将原始字符串和替换后的字符串显示在屏幕上,并输出到文件p10_2.out中
#include<stdio.h>
replace(char *s,char c1,char c2)
{ while(*s!='\0')
{ if (*s==c1)
*s=c2;
s++;
}
}
main()
{ FILE *fp;
char str[100],a,b;
if((fp=fopen("p10_2.out","w"))==NULL)
{ printf("cannot open the file\n");
exit(0); }
printf("Enter a string:\n");
gets(str);
printf("Enter a&&b:\n");
scanf("%c,%c",&a,&b);
printf("%s\n",str);
fprintf(fp,"%s\n",str);
replace(str,a,b);
printf("The new string is----%s\n",str);
fprintf(fp,"The new string is----%s\n",str);
fclose(fp);
}在一个字串s1中查找一子串s2,若存在则返回子串在主串中的起始位置,不存在则返回-1。

struct student
{
int num;
char *name;
char sex;
int age;
}stu[5]={{1001,"lihua",'F',18},{1002,"liuxing",'M',19},{1003,"huangke",'F',19},{1004,"fengshou",'F',19},{1005,"Wangming",'M',18}};
main()
{int i;
struct student *ps;
printf("Num \tName\t\t\tSex\tAge\t\n");
/*用指针变量输出结构体数组元素。*/
for(ps=stu;ps<stu+5;ps++)
printf("%d\t%-10s\t\t%c\t%d\t\n",ps->num,ps->name,ps->sex,ps->age);
/*用数组下标法输出结构体数组元素学号和年龄。*/
for(i=0;i<5;i++)
printf("%d\t%d\t\n",stu[i].num,stu[i].age);
}建立一个有三个结点的简单链表

冒泡排序,从小到大,排序后结果输出到屏幕及文件myf2.out

输入一个字符串,判断其是否为回文。回文字符串是指从左到右读和从右到左读完全相同的字符串。

编写函数countpi,利用公式计算π的近似值,当某一项的值小于10-5时,认为达到精度要求,请完善函数。将结果显示在屏幕上并输出到文件p7_3.out中。

相关推荐:《C视频教程》
以上是C語言必背18個經典程序,C語言初學者必會(收藏)的詳細內容。更多資訊請關注PHP中文網其他相關文章!