집 >백엔드 개발 >C#.Net 튜토리얼 >C언어 초보자가 꼭 알아야 할 클래식 프로그램 18가지(모음)
A C 언어초보자는 어떻게 코드를 배우고, 코드를 읽고, 작성하나요? 코드를 배우고 싶은데 방향을 모르겠어요. C 언어에는 방향이 없나요? 기억해야 할 것이 많습니다. 기본적으로 몇 가지 일반적인 진술과 몇 가지 키워드만 있으면 됩니다. 여러분이 보는 수천, 심지어 수만 줄의 코드는 모두 이러한 문과 키워드를 사용하여 반복적으로 작성되었습니다. 단지 논리적 기능이 다를 뿐입니다. 그렇다면 C 언어 코드를 빠르게 시작하는 방법은 더 많이 읽고 더 많이 작성하는 것이 좋습니다.
C 언어를 사용하여 9*9 수식을 출력합니다. 총 9개의 행과 9개의 열이 있으며 i는 행을 제어하고 j는 열을 제어합니다.
다음 프로그램의 기능은 4×4 배열을 시계 반대 방향으로 90도 회전한 후 출력하는 것입니다. 원래 배열의 데이터를 무작위로 입력하면 새로운 배열이 4행 4열로 출력됩니다. 빈 공간에 프로그램을 완성해 주십시오.
생후 3개월부터 매달 한 쌍의 토끼가 태어납니다. 3개월이 지나면 매달 한 쌍의 토끼가 태어난다. 토끼가 죽지 않으면 매달 토끼의 수는 모두 몇 마리인가?
토끼의 패턴은 1,1,2,3,5,8,13,21...
사이의 판단 101-200 소수가 몇 개 있는지, 모든 소수와 소수의 개수를 출력합니다.
프로그램 분석: 소수 결정 방법: 숫자를 사용하여 2를 각각 sqrt(이 숫자)로 나눕니다. 균등하게 나눌 수 있으면 그 숫자는 소수가 아니라는 의미이고, 그렇지 않으면 소수입니다.
숫자가 그 인수의 합과 정확히 같을 경우, 이 숫자를 "완전수"라고 합니다. 예를 들어 6=1+2+3과 같이 1000 내의 모든 완전수를 찾는 프로그램입니다.
직각 양희삼각형을 인쇄하는 프로그래밍
4개 과목 3명의 학생 성적을 키보드를 통해 입력하고, 각 학생의 평균 성적과 과목별 평균 성적을 구합니다. 모든 점수는 4행 5열 배열로 입력해야 하며, 입력 시 동일한 사람에 대해서는 데이터 사이에 공백을 사용하고 다른 사람에 대해서는 Enter 키를 누릅니다. 각 과목의 평균 점수입니다.
#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"); } }
윈도우 입력, swodniw 출력 등 입력 문자열을 역순으로 출력하도록 프로그램을 개선합니다.
다음 프로그램의 기능은 문자 배열 s에서 c에 저장된 문자를 삭제하는 것입니다.
x 배열의 n개 데이터를 큰 것부터 구현하려면 void sort(int *x, int 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中
#includeade979de5fc0e1ca0540f360a64c230b 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가지(모음)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!