当前位置:首页 » 编程语言 » 用c语言

用c语言

发布时间: 2022-01-19 19:18:39

① 用c语言编写程序

程序就是读取文件到数组,再将数组进行排序,最后写入文件。

读写文件流程:fopen获取文件流(根据读写需求,选择参数,使用完必须调用fclose函数关闭),fscanf读取文件内容,fseek控制文件流指针,fprintf写入文件。

选择排序:每个循环周期选出一个最值,交换一次。

下面是代码(数组为动态数组):

#include <stdio.h>

#include <malloc.h>

int maxLen;//数组长度

int *read2Nums(char path[]);//读取

int write2File(int *nums,char path[]);//写入

void showNums(int *nums);

int px(int *nums,int flag);//选择排序flag=1升序,flag=0降序

int main()

{

int *nums=NULL;

char rPath[]="c:\000.dat",wPath[]="c:\rank.dat";

if(!(nums=read2Nums(rPath))) return 1;

showNums(nums);

printf("数组升序排列: ");

if(px(nums,1)==-1) return 1;

showNums(nums);

printf("数组降序排列: ");

if(px(nums,0)==-1) return 1;

showNums(nums);

printf("写入到文件路径%s下(存在覆盖,不存在新建) ",wPath);

if(write2File(nums,wPath)==-1) return 1;

printf("写入成功! ");

return 0;

}

void showNums(int *nums)

{

int i;

if(nums) for(i=0,printf("文件内容: ");i<maxLen;printf("%d ",nums[i]),i++);

printf(" ");

}

int px(int *nums,int flag)

{

int i,j,n,temp;

if(!nums) return -1;

for(i=0;i<maxLen-1;i++)

{

n=i;

for(j=i+1;j<maxLen;j++)

{

if(flag && nums[n]>nums[j]) n=j;

if(!flag && nums[n]<nums[j]) n=j;

}

temp=nums[i],nums[i]=nums[n],nums[n]=temp;

}

return 1;

}

int write2File(int *nums,char path[])

{

int i;

FILE *fp=NULL;

if(!nums) return -1;

if(!(fp=fopen(path,"w"))) return -1;

//fseek(fp,SEEK_END);

for(i=0;i<maxLen;i++)

fprintf(fp,"%d ",nums[i]);

fclose(fp);

return 1;

}

int *read2Nums(char path[])

{

int *nums=NULL,*temp=NULL,cnt=0;

FILE *fp=NULL;

maxLen=10;

if(!(fp=fopen(path,"r"))) return NULL;

nums=(int *)malloc(sizeof(int)*maxLen);

if(!nums) return NULL;

while(fscanf(fp,"%d",&nums[cnt++])!=-1)

if(cnt==maxLen)//数组长度不够扩展(每次扩展10长度)

{

maxLen=maxLen+10;

temp=(int *)realloc(nums,sizeof(int)*maxLen);

if(temp) return NULL;

nums=temp;

}

if(--cnt<maxLen)//函数结束前,删除多余地址,减少内存占用

{

maxLen=cnt;

temp=(int *)realloc(nums,sizeof(int)*maxLen);

if(!temp) return NULL;

nums=temp;

}

fclose(fp);

return nums;

}

② 用c语言怎么做

③ 用C语言实现

冒泡排序是最简单的排序,随便一个c语言的书都有,好好学习一下吧。

④ 用C语言怎么做

很多大学生都或多或少的懂一点编辑语言,尤其是计算机系的,众说周知,c++语言是众多语言中比较简单易学的,那么要如何使用它来编写程序呢?下面将告知如何编写一个属于自己的小程序。
工具/原料
more
电脑一台(能联网) Visual C++ 6.0(完整绿色版)软件
方法/步骤
1/6分步阅读
想要编写软件首先得要有编写工具,对于初学者来说,一个好的编写工具会能让我们更快的上手,所以编写软件最好是中文版的,我这里使用的是Visual C++ 6.0(完整绿色版)软件,当然也可以用其他版本,只是内容大同小异。首先要在网上下载软件。

查看剩余1张图
2/6
软件安装后(安装过程就不多加赘述了)运行软件,哪个你知道吗....可以不用管它,点击关闭即可。先点击点击左上角文件,再点击新建。

查看剩余1张图
3/6
点击新建后进入一个界面,在此界面上先选择工作区,然后选择倒数第三个,然后自己建立一个工程名(必须得先选择后建立工程名),然后可以选择工程保存位置,点击确认,之后选择一个空工程,点击完成。

查看剩余1张图
4/6
点击完成后又会回到起初的界面,老规矩点击文件,新建,进入界面后,这一次要选择文件区,然后选择第四个,再建立文件名,设置好了后点击确定。

5/6
点击确定后就进入设计界面了,在此界面上我们可以随心所欲的写自己想写的代码,写完代码后,可以点击上面的那个叹号似的东西,选择运行程序,之后我们写的程序就会运行,你可以看到它们运行后的状态。

查看剩余2张图
6/6
值得一提的是,如果你的代码存在错误时,那么程序会运行不成功,你可以到最下面那个窗口看自己到底错在哪里,然后改正直到运行成功,则程序制作成功了。
注意事项
在建立工程时一定要记得工程的位置,最好是专门建立一个文件夹来存放,否则容易会导致找不到工程的的情况。

⑤ C语言中的%是个什么意思啊 有什么用啊

%是求模的意思,两边必须是整数类型的,求模常用符号为mod,就是我们小学学的求余运算符。

例如50%23=4,因为余数为4,所以在程序中必须保证两边为整数才是这个意思。

(5)用c语言扩展阅读

“模”是“Mod”的音译,模运算多应用于程序编写中。 Mod的含义为求余。模运算在数论和程序设计中都有着广泛的应用,从奇偶数的判别到素数的判别,从模幂运算到最大公约数的求法,从孙子问题到凯撒密码问题,无不充斥着模运算的身影。虽然很多数论教材上对模运算都有一定的介绍,但多数都是以纯理论为主,对于模运算在程序设计中的应用涉及不多。

基本性质

(1)若p|(a-b),则a≡b (% p)。例如 11 ≡ 4 (% 7), 18 ≡ 4(% 7)

(2)(a % p)=(b % p)意味a≡b (% p)

(3)对称性:a≡b (% p)等价于b≡a (% p)

(4)传递性:若a≡b (% p)且b≡c (% p) ,则a≡c (% p)

参考资料模运算_网络

⑥ 用c语言怎么写

#include<stdio.h>

struct date

{

int year;

int month;

int day;

};

int days(struct date day)

{

static int day_tab[2][13]=

{{0,31,28,31,30,31,30,31,31,30,31,30,31,}, /*平均每月的天数*/

{0,31,29,31,30,31,30,31,31,30,31,30,31,},

};

int i,lp;

lp=(day.year%4==0&&day.year%100!=0)||day.year%400==0;

/*判定year为闰年还是平年,lp=0为平年,非0为闰年*/

for(i=1;i<day.month;i++) /*计算本年中自1月1日起的天数*/

day.day+=day_tab[lp][i];

return day.day;

}

int main()

{

struct date today,term;

int yearday,year,day;

printf("请输入日期:(年 月 日):");

scanf("%d%d%d",&today.year,&today.month,&today.day); /*输入日期*/

term.month=12; /*设置变量的初始值:月*/

term.day=31; /*设置变量的初始值:日*/

for(yearday=0,year=1990;year<today.year;year++)

{

term.year=year;

yearday+=days(term); /*计算从1990年至指定年的前一年共有多少天*/

}

yearday+=days(today); /*加上指定年中到指定日期的天数*/

day=yearday%5; /*求余数*/

if(day>0&&day<4) printf("打鱼 "); /*打印结果*/

else printf("晒网 ");

}

⑦ “并且”用C语言怎么表示

并且用C语言表示方法如下:按位与 &amp:

例子:

int a=1,b=0。

a=a&amp;b。

结果a=0。

=====================================

表达式之间的逻辑与 &amp;&amp。

例子:if (a&gt;b &amp;&amp;a&gt;c);如果a&gt;b并且a&gt;c则...

(7)用c语言扩展阅读:

C语言的基本构成:

数据类型:C的数据类型包括:整型、字符型、实型或浮点型(单精度和双精度)、枚举类型、数组类型、结构体类型、共用体类型、指针类型和空类型。

常量与变量:常量其值不可改变,符号常量名通常用大写。变量是以某标识符为名字,其值可以改变的量。标识符是以字母或下划线开头的一串由字母、数字或下划线构成的序列,请注意第一个字符必须为字母或下划线,否则为不合法的变量名。变量在编译时为其分配相应存储单元。

数组:如果一个变量名后面跟着一个有数字的中括号,这个声明就是数组声明。字符串也是一种数组。它们以ASCII的NULL作为数组的结束。要特别注意的是,方括内的索引值是从0算起的。

⑧ 用c语言编写

#include<stdio.h>
voidfun(intn){
inti,j;

for(i=1;i<=n;i++){ for(j=1;j<=i;j++){
printf("*");
}


printf(" ");
}
for(i=n;i>=1;i--){
for(j=i;j>=1;j--){
printf("*");
}
printf(" ");
}


}
intmain(){
fun(5);

return0;
}

热点内容
英朗自动挡哪个配置最好 发布:2024-11-15 14:27:44 浏览:253
编译原理断言有哪几种 发布:2024-11-15 14:25:29 浏览:200
数据库数据重复 发布:2024-11-15 14:23:17 浏览:781
安卓端开发用什么IDE 发布:2024-11-15 14:13:51 浏览:554
阿里云查看访问ip 发布:2024-11-15 14:08:58 浏览:544
随机字符串php 发布:2024-11-15 14:03:46 浏览:122
怎样用数据库搭建服务器 发布:2024-11-15 13:58:39 浏览:478
android编码设置 发布:2024-11-15 13:50:02 浏览:907
androidstringchar 发布:2024-11-15 13:45:00 浏览:965
obs配置怎么弄 发布:2024-11-15 13:43:30 浏览:868