
笔记
文章平均质量分 67
「已注销」
这个作者很懒,什么都没留下…
展开
-
一个最简单的读写文件C语言操作
#include<stdio.h>int main(){FILE*fp=fopen(“dh.txt”,“w”);int a;scanf("%d",&a);fprintf(fp,"%d",a);fclose(fp);int b;fp=fopen(“dh.txt”,“r”);fscanf(fp,"%d",&b);printf("%d",b);fclose(fp);return 0;}原创 2020-12-02 21:57:33 · 197 阅读 · 0 评论 -
结构体数组
有N个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入N个学生的数据,要求打印出3门课的总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课成绩)#include <stdio.h>#include <stdlib.h>struct Student{char ID[100];char name[100];int grade1;int grade2;int grade3;};void input(struct Student a,int N){原创 2020-12-01 13:23:40 · 199 阅读 · 0 评论 -
链表2(链表的创建与遍历)
现有有N个学生的数据记录,每个记录包括学号、姓名、三科成绩。 编写一个函数input,用来输入一个学生的数据记录。 编写一个函数print,打印一个学生的数据记录。 在主函数调用这两个函数,读取N条记录输入,再按要求输出。 N<100#include<stdio.h>typedef struct Student{char StudentID[100];char Name[100];int grade1;int grade2;int grade3;struct Studen原创 2020-11-30 21:51:37 · 189 阅读 · 0 评论 -
PAT:给定一个华氏温度F,本题要求编写程序,计算对应的摄氏温度C。计算公式:C = 5*(F-32)/9。题目保证输入与输出均在整型范围内
#include<stdio.h>int main(){int F,C;while(scanf("%d",&F)!=-1)printf(“Celsius = %d\n”,C = 5*(F-32)/9);return 0;}原创 2020-11-30 17:46:40 · 8641 阅读 · 1 评论 -
链表1(链表的建立与输出)
#include<stdio.h>#include<malloc.h>#include<stdlib.h>typedef struct data{int a;struct data *p;}node;void fun(node head){nodeq=head->p;while(q!=NULL){printf("%d ",q->a);q=q->p;}}int main(){ node* data1=(node*)mal原创 2020-11-30 10:39:15 · 220 阅读 · 0 评论 -
动态字符串
#include<stdio.h>int main(){ char p;int n;scanf("%d",&n);p=(char)malloc(n*sizeof(char));scanf("%s",p);int m;scanf("%d",&m);for(int i=m-1;i<n;i++)printf("%c",p[i]);return 0;}原创 2020-11-26 15:38:29 · 168 阅读 · 0 评论 -
一维动态数组
#include<stdio.h>#include<malloc.h>int main(){ int p;int n;int m;scanf("%d",&n);p=(int)malloc(n42);for(int i=0;i<n;i++){scanf("%d",&p[i]);}scanf("%d",&m);for(int i=n-m;i<n;i++){printf("%d “,p[i]);}for(int i=0;i原创 2020-11-26 14:56:42 · 242 阅读 · 0 评论 -
返回数组的指针
#include<stdio.h>int *liubi(int a[]){return a;}int main(){ int a[]={1,2,3};int *q,t; for(int i=0;i<3;i++)printf("%d\n",*(liubi(a)+i));return 0;}原创 2020-11-09 11:51:19 · 130 阅读 · 0 评论 -
字符串的查找
#include<stdio.h>void yuan(char a[100],char b[100]){int j=0;for(int i=0;i<strlen(a);i++) {if(a[i]‘a’||a[i]‘e’||a[i]‘i’||a[i]‘o’||a[i]==‘u’) b[j++]=a[i];}}int main(){ char a[100],b[100]=“i”;gets(a);yuan(a,b);for(int i=0;i<strlen(b);原创 2020-11-06 11:55:22 · 169 阅读 · 0 评论 -
3×3矩阵的转置(重点子函数你只需要转三个数而不是九个))
#include<stdio.h>void zhuanzhi(int a[3][3]){for(int i=0;i<3;i++){for(int j=i+1;j<3;j++){int temp;temp=a[i][j];a[i][j]=a[j][i];a[j][i]=temp;} }}int main(){ int a[3][3],i,j;for(i=0;i<3;i++)for(j=0;j<3;j++){scanf("%d",&a原创 2020-11-06 10:44:26 · 480 阅读 · 0 评论 -
指针二
#include<stdio.h>int main(){ char *suit[4]={“Hearts”,“Diamonds”,“Clubs”,“Space”};for(int i=0;i<4;i++){printf("%s\n",suit[i]);}return 0;}原创 2020-11-06 09:37:26 · 88 阅读 · 0 评论 -
逆序输出字符串
#include<stdio.h>#define N 20int main(){ char str[N];int n;gets(str);n=strlen(str);for(int i=n-1;i>=0;i–)putchar([i]);return 0;}原创 2020-11-04 10:56:00 · 276 阅读 · 0 评论 -
将字符型’1’变为数值型1
#include<stdio.h>int main(){printf("%d",‘1’-‘0’);return 0; }原创 2020-11-03 09:07:16 · 798 阅读 · 0 评论 -
实现两个数组间的赋值+冒泡排序法
#include <stdio.h>#include <stdlib.h>int main(){ int a[9],i,j;for(i=0;i<9;i++){scanf("%d",&a[i]);} int b[i+1]; for(i=0;i<9;i++){ b[i]=a[i];} scanf("%d",&b[9]); for( i=0;i<10;i++){for( j=0;j<原创 2020-10-31 23:43:31 · 316 阅读 · 0 评论 -
输入输出数组及冒泡排序法
#include <stdio.h>#include <stdlib.h>int main(){ int a[10],i,j;for (int i=0;i<10;i++){scanf("%d",&a[i]);}for( i=0;i<10;i++){for( j=0;j<10-1-i;j++){if (a[j]>a[j+1]){int t;t=a[j+1];a[j+1]=a[j];a[j]=t;} }} for(原创 2020-10-31 20:18:42 · 290 阅读 · 0 评论 -
输入输出数组(要使数字间一空格在%d后空一格)
#include <stdio.h>#include <stdlib.h>int main(){ int a[10],i;for (int i=0;i<10;i++){scanf("%d",&a[i]);}for (int i=0;i<10;i++){printf("%d ",a[i]);} return 0;}原创 2020-10-31 20:09:11 · 1492 阅读 · 0 评论 -
输出N以内的素数()筛选法:用一个参量决定数的取舍,参量可变也可不变(jianshangpian)
#include /* run this program using the console pauser or add your own getch, system(“pause”) or input loop */int main(int argc, char** argv) {int f,i,j,n;scanf("%d",&n);for(i=2;i<=n;i++){f=0;for(j=2;j<i;j++){if(i%j0){f++;}} if(f0)原创 2020-10-31 19:47:42 · 69 阅读 · 0 评论 -
判断一个数是不是素数
#include <stdio.h>#include <stdlib.h>int main(){ int m=0,n=2,Isprime;scanf("%d",&m);for(;n<m;n++){ if(m%n0)Isprime=1;break;}if(Isprime1)printf(“素数”);else printf(“不是素数”);}原创 2020-10-31 13:57:30 · 83 阅读 · 0 评论 -
冒泡排序法(\t的功能是是空出空格,补齐8个)
include /* run this program using the console pauser or add your own getch, system(“pause”) or input loop */int main() {int i,j;int a[5]={10,1,14,133,15};for( i=0;i<5;i++){for( j=0;j<5-1-i;j++){if (a[j]>a[j+1]){int t;t=a[j+1];a[j+1]=a[原创 2020-10-30 12:27:06 · 168 阅读 · 0 评论 -
猜数游戏(循环条件不要写成循环结束条件)
#include<stdio.h>#include<time.h>int main(){ srand(time(0));int a=0,count=0,number;number=rand()%100+1;printf(“请猜一个1到100之间的数\n”);printf(“请输一个数:”);do{scanf("%d",&a);if(a>number)printf(“输入的数大了\n”);else if(a<number)printf(原创 2020-10-30 10:20:04 · 225 阅读 · 0 评论 -
shuixian子函数
void shuixian(int i) {int x1,x2,x3; x1=i/100; x2=i/10-x1*10; x3=i%10; if(i==x1*x1*x1+x2*x2*x2+x3*x3*x3) { printf("Yes\n");} else { printf("No\n");}原创 2020-10-29 12:16:51 · 104 阅读 · 0 评论 -
完数并输出其因数
#include<stdio.h>int main(){int N,n;scanf("%d",&N);for(int i=1;i<N;i++){int sum=0;for(n=1;n<i;n++){ if(i%n==0){ sum=sum+n;}}if(sum==i){ printf("%d its factors are “,i);for(n=1;n<i;n++){if(i%n==0){printf(”%d “,n);}原创 2020-10-28 14:08:13 · 334 阅读 · 0 评论 -
求完数
#include<stdio.h>int main(){int N,n;scanf("%d",&N);for(int i=1;i<N;i++){int sum=0;for(n=1;n<i;n++){ if(i%n==0){ sum=sum+n;}}if(sum==i)printf("%d\n",i);}return 0;}原创 2020-10-28 12:56:39 · 273 阅读 · 0 评论 -
另一种更好的换值方法
#include<stdio.h>int main(){ float t1=2,t2=1,t,sum=0;int n=1,N;scanf("%d",&N);while(n<=N){n++;sum=sum+t1/t2;t=t1;t1=t1+t2;t2=t;}printf("%.2f",sum);return 0;}原创 2020-10-28 00:13:00 · 108 阅读 · 0 评论 -
当你交换两数的值,先把和给t3,再给t2,最后给t1
有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13… 求出这个数列的前N项之和,保留两位小数。#include<stdio.h>int main(){ float t1=2,t2=1,t3,sum=0;int n=1,N;scanf("%d",&N);while(n<=N){n++;sum=sum+t1/t2;t3=t1+t2;t2=t1;t1=t3;}printf("%.2f",sum);return 0;}...原创 2020-10-28 00:09:59 · 108 阅读 · 0 评论 -
循环3
猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。 第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。 到第N天早上想再吃时,见只剩下一个桃子了。求第一天共摘多少桃子。#include<stdio.h>int main(){ int N,n=1,sum=0,a=1;scanf("%d",&N);while(n<N){n=n+1;sum=sum+a;a=(a+1)*2;}printf("%d"原创 2020-10-27 23:11:51 · 169 阅读 · 0 评论 -
循环2
一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。 它在第N次落地时反弹多高?共经过多少米? 保留两位小数#include<stdio.h>int main(){ float M,N,n=1;scanf("%f%f",&M,&N);float sum=M;while(n<=N){n++;M=M/2;sum=sum+M*2;} printf("%.2f %.2f",M,sum-2*M);return 0;}...原创 2020-10-27 23:02:54 · 336 阅读 · 0 评论 -
水仙花数(if 中不要再写=,写==)
#include <stdio.h>#include <stdlib.h>int main(){ int i=99,a,b,c;while(i<999){ i++; a=i/100; b=i/10-a*10; c=i%10; if(i==a*a*a+b*b*b+c*c*c) { printf("%d\n",i); }}return 0;}原创 2020-10-27 21:40:58 · 188 阅读 · 0 评论 -
当你想输出一个浮点数,定义一定要写double或float,scanf中不能有精度,最后一定要有精度。
#include <stdio.h>#include <stdlib.h>int main(){ float n1=1,n2=1,n3=1,sum1=0,sum2=0,sum3=0,m1=1,m2=1,m3=1,a,b,c;scanf("%f %f %f",&a,&b,&c);while(n1<=a){n1=n1+1;sum1=sum1+m1;m1=m1+1;}while(n2<=b){n2=n2+1;sum2=su原创 2020-10-27 21:04:01 · 248 阅读 · 0 评论