编写一个程序:要求输入5个学生的成绩(从0到100的整数),并将这5个数保存到"data.txt"

编写一个程序:要求输入5个学生的成绩(从0到100的整数),并将这5个数保存到"data.txt",第1张

源程序代码以及算法解释如下:

#define _CRT_SECURE_NO_WARNINGS//VS环境下需要,VC不需要

#include <iostream>

using namespace std;//引用命名空间

void main()

{

const int n = 5;//定义成绩数量

int number[n];//定义存放成绩的数组

int i;//定义循环变量

char Data[256];//定义存文件用的变量

FILE pos;//定义一个文件指针

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

cin >> number[i];//输入成绩

if (pos = fopen("datatxt", "w+"))//写文件

{

for (i = 0; i < n; i++) //循环写入

sprintf(Data, "%d\n", number[i]);//写入文件成绩

fputs(Data, pos); 

}

fclose(pos);//关闭保存文件

}

else 

cout << "创建文件失败!" << endl;//创建失败

}

程序运行结果如下:

写入过程如下:

文件写入结果:

扩展资料:

C++文件 *** 作代码示例:

#include <fstream>

#include <iostream>

using namespace std;

int main()

{

const char filename = "exampletxt";

char buffer;//buffer是一块内存地址,用来存储或读取数据

long size;//size 是一个整数值,表示要从缓存(buffer)中读出或写入的字符数

ifstream file(filename, ios::in | ios::binary | ios::ate);

size = filetellg();

fileseekg(0, ios::beg);

buffer = new char[size];

fileread(buffer, size);

fileclose();

cout << "the complete file is in a buffer";

delete[] buffer;

return 0;

}

#include int main() { int i,count=0,a[10]; printf("请输入10个同学的成绩:"); for(i=0;i/循环输入成绩 { scanf("%d",&a[i]); if(a[i]>80) count++;//判断成绩是否大于80,是的话个数+1 } printf("%d",count);//输出大于80分得个数 return 0; }

如下:

#include <iostream>

#include <string>

using namespace std;

void print(string name, double &Chinese, double &Math, double &English) {

cout << "请输入学生的姓名: ";

cin >> name;

cout << endl;

cout << "请输入语文成绩: ";

cin >> Chinese;

cout << endl;

cout << "请输入英语成绩: ";

cin >> English;

cout << endl;

cout << "请输入数学成绩: ";

cin >> Math;

cout << endl;

}

double average(double a[10], int length) {

double sum = 0, avg = 0;

for( int i = 0; i < length; i ++)

sum += a[i];

avg = sum / length;

return avg;

}

double max(double a[10], int length) {

double max = a[0];

for( int i = 1; i < length; i++) {

if(max < a[i])

max = a[i];

}

return max;

}

int main() {

string name, sure = "Y";

double Chinese[10], English[10], Math[10];

int length = 0;

while(sure == "Y" || sure == "y") {

print(name,Chinese[length],Math[length],English[length]);

cout << "是否继续输入?<请输入Y/N或者y/n>";

cin >> sure;

length ++;

}

cout << "共输入: " << length << "人" << endl;

cout << "语文平均" << average(Chinese, length) << "分, " << "最高分" << max(Chinese,length) << "分" << endl;

cout << "数学平均" << average(Math, length) << "分, " << "最高分" << max(Math,length) << "分" << endl;

cout << "英语平均" << average(English, length) << "分, " << "最高分" << max(English,length) << "分" << endl;

return 0;

}

简介:

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

当年我学C语言的时候,这个问题有考过,这边显示方式不方便用代码实现,我给你几个要点。

1, 建一个学生类,有四个字段,分别表示学生名,英语,计和数的成绩。

2, 建一个输出类,即含有方法 public static void main(String[] args),并在这个方法里用 while循环接收输入参数,直到你定义一个参数表示退出即可打印。

另外在这个输出类里,加一个属性 List list = new ArrayList();表示所有学生。

3, 运行窗口,使用输出类并输入参数即可。

最后,这个问题主要是考你的逻辑能力,初学者可能要想一两天才能想出来。

public class Student {

private String name;//姓名

private int english;//英语成绩

private int computer;//计算机成绩

private int database;//数据库成绩

//getter/setter略

}

public class Printer {

private static List<Student> students = new ArrayList<Student>();

public static void main(String[] args) {

while (true) {

Scanner in = new Scanner(Systemin);

Systemoutprintln("请输入:学生名 英语 计算机 数据库");

String line = innextLine();

if(line == null || linelength() == 0) {

break;// 用户未输入,默认表示退出

}

if(line == "exit") {

break;// 用户输入exit,表示退出

}

String[] values = linesplit(" ");

if(valueslength != 4) {

break;//参数不对,退出!可以自己优化

}

Student s = new Student();

ssetName(values[0]);

ssetEnglish(IntegervalueOf(values[1]));

ssetComputer(IntegervalueOf(values[2]));

ssetDatabase(IntegervalueOf(values[3]));

studentsadd(s);

}

for (Student student : students) {

Systemoutprintln("学生名:" + studentgetName() + "; 英语成绩:"

+ studentgetEnglish() + "计,数成绩略,类推!");

}

}

}

真是沤心沥血啊,应该不会再要怎么编译,用啥工具吧?

import javautilScanner;public class Score {

public static String getLevel(double score){

if(score<60)return "不及格"; //如果小于60,不及格

else if(score>=60&&score<75)return "及格"; //如果在60和75之间,及格

else if(score>=75&&score<90)return "良"; //如果在75和90之间,良

else return "优";//其它,也就是90及以上,优。

}

public static void main(String args[]){

Scanner scan = new Scanner(Systemin);

while(true){

Systemoutprint("请输入成绩(输入非数字,退出程序):");

try{

Systemoutprintln("这个成绩的等级: "+getLevel(scannextDouble()));

}catch(Exception e){

return;

}

}

}} 以上为java实现

以上就是关于编写一个程序:要求输入5个学生的成绩(从0到100的整数),并将这5个数保存到"data.txt"全部的内容,包括:编写一个程序:要求输入5个学生的成绩(从0到100的整数),并将这5个数保存到"data.txt"、请问一下用C语言输入学生成绩。首先输入80分以上的程序怎么写用if语句、项目二:编写一个学生分数录入系统,学生信息包括学生姓名、语文成绩、数学成绩和英语成绩等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9308412.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存