Advertisement

2005年兰州交通大学硕士研究生考试题(计算机编程题)

阅读量:

说明

#include "Stdio.h"
#include "Conio.h"

#define n 3

main() {
int A[n][n];
int i,j;
int sum=1;
for (i=0; i<n; i++) {
for (j=0; j<n; j++) {
printf("please input a[%d][%d] number : /n", i,j);
scanf("%d", &A[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
printf("% d",A[i][j]);
}
printf("/n");
}

for(i=0;i<n;i++){
for(j=0;j<n-i;j++){
sum*=A[i][j];
}
}
printf("The result: %d/n",sum);
getch();

}

第六题:请编写一个程序来复制内容到目标文件g中,并确保该文件的数量控制在1000行以内。同时,在目标文件g中对每一行附加该编号于末尾。

#include<stdio.h>
main(){
FILE *fp1,*fp2;
char ch;
char *p;
int count=0,i=0;
if((fp1=fopen("C://Win-TC//test//f.txt","r"))==NULL){
printf("Can't open input file/n");
exit(1);
}
if((fp2=fopen("C://Win-TC//test//g.txt","r+"))==NULL){
printf("Can't open input file/n");
exit(1);
}
p=(char *)calloc(65,sizeof(char));
while(1){
ch=fgetc(fp1);
if(ch=='/n'||ch=='/r'||ch==EOF){
count++;
fwrite(p,sizeof(65),i,fp2); /将该行的字符写入g.txt文件中/
fprintf(fp2,"%d",count); /将每行的编号写在该行的末尾/
free(p); /释放p内存空间/
p=(char *)calloc(65,sizeof(char)); /重新分配p的空间并初始化/
i=0;
}
if(ch==EOF) break;
p[i++]=ch;
}
fclose(fp1);

该程序用于将文件g.txt的内容输出到控制台 screen上。
重置 file handle fp2的位置于文件开始处。
while (fgetc(fp2) != EOF)
echo到控制台 screen上 fgetc(fp2)
file handle fclose fp2。
press回车键以结束程序 execution.

第七题:请编写一段程序实现以下排序逻辑:首先进行第一趟比较,在此过程中确定最小值并将其存入数组索引为1的位置;接着确定最大值并将之存入数组末尾位置;随后进行第二趟比较,在这一阶段需确定次小值并将之存入数组索引2的位置;接着找到次大值并将其放置在倒数第二个位置上;依此类推依次完成后续各项步骤

#include<stdio.h>
#define n 10

int max_num(int a[], int m) {
int k=0;
int b=a[m];
for (k=m; k<n-m; k++) {
if (a[k]>b)
b=a[k];
}
return b;
}

int min_num(int a[], int m)
{
int k=0;
int b=a[m];
for (k=m; k<n-m; k++) {
if (a[k]<b)
b=a[k];
}
return b;
}

函数main()开始执行{
整型变量i、j分别初始化为0;max和min同样初始化为0。
定义数组r的大小设为n。
输出提示信息,请输入%d个数字:/n
循环从i等于0开始直到i小于n为止{
输出提示,请输入数组r的第%d个元素:/n
从标准输入读取一个整数并将其存储在r[i]的位置上
}
}

printf("/n");
for (i=0; i<n; i++) {
printf("% d", r[i]);
}

for (i=0; i<n/2; i++) {

max=max_num(r, i);
min=min_num(r, i);

for (j=i; j<n-i; j++) {
if (r[j]==max) {
r[j]=r[n-i-1];
r[n-i-1]=max;
}
if (r[j]==min) {
r[j]=r[i];
r[i]=min;
}
}
}

printf("/n");
for (i=0; i<n; i++) {
printf("% d", r[i]);
}

getch();
}

全部评论 (0)

还没有任何评论哟~