工信部软件大赛及C++基本教程

来源:互联网 发布:回族最新人口数据 编辑:程序博客网 时间:2024/05/18 03:14
#include <iostream>#include "cmath"using namespace std;int f(int n, int a[], int idx){if(a[0]*a[0]+a[1]*a[1]+a[2]*a[2]+a[3]*a[3]==n) return 1;  // 填空1——这行代码用来判断四个数的平方和是否等于nif(idx==4)  return 0;for(int i=(int)sqrt(n); i>=1; i--){a[idx] = i;if(f(n, a, idx+1))  return 1;  // 填空2——这行代码运用递归给数组的四个元素赋值}return 0;}int main(int argc, char* argv[]){    int number=1;    for(;;){printf("输入整数(1~10亿):");scanf("%d",&number);        if(number<1) break;int a[] = {0,0,0,0};int r = f(number, a, 0);printf("%d: %d %d %d %d\n", r, a[0], a[1], a[2], a[3]);}return 0;}#include <iostream>#include <fstream>using namespace std;struct student{//定义一个结构体char name[20];int num;int age;char sex;};void fun(){//写入函数student stud[3] = {"li",1001,18,'f',"fu",1002,19,'m',"wu",1004,17,'f'};//定义结构体数组ofstream outfile("stud.dat",ios::binary);//以二进制形式打开文件if(!outfile){//若文件打开失败,程序终止cerr<<"open error!"<<endl;abort();}for(int i=0;i<3;i++){//向文件内写入outfile.write((char*)&stud[i],sizeof(stud[i]));}outfile.close();//关闭文件}void fum(){//读出函数student stud[3];int i;ifstream infile("stud.dat",ios::binary);//以二进制形式打开文件if(!infile){//若打开文件失败,程序终止cerr<<"open error!"<<endl;abort();}for(i=0;i<3;i++){//以二进制的形式读入文件infile.read((char*)&stud[i],sizeof(stud[i]));}infile.close();//关闭文件for(i=0;i<3;i++){//将读出的信息打印出来cout<<"NO."<<i+1<<endl;        cout<<"name"<<stud[i].name<<endl;cout<<"num"<<stud[i].num<<endl;cout<<"age"<<stud[i].age<<endl;cout<<"sex"<<stud[i].sex<<endl;}}int main(){//主函数fun();fum();return 0;}

原创粉丝点击