陕交大C语言测试题,西安交大c++程序设计第四章作业2.doc

41528d3028836879cd698677c3999917.gif西安交大c++程序设计第四章作业2.doc

西安交通大学实验报告课程__计算机程序设计__实验名称__结构体__第1页共29页系别__________实验日期2014年4月26日专业班级______组别_____________实验报告日期2014年4月27日姓名__________学号__报告退发(订正、重做)同组人_________________________________教师审批签字一、实验目的掌握结构体的使用方法,学会用结构体的方法定义变量并对变量进行处理;掌握枚举法的使用方法。二、实验内容(一)第一题:1、输入某小组5个人的姓名、性别、出生年份等信息,统计男女人数以及1988年以后(含1988年)出生的人数。1.源程序代码://输入某小组个人的姓名、性别、出生年份等信息,统计男女人数以及年以后(含年)出生的人数。#includeusingnamespacestd;structxinxi{charname[20];charsex;intyear;};//定义结构体xinxi,包含名称(字符串)、性别(字符)、出生时间(整数)三个变量intmain(){xinxicy[5];inti,s=0,m=0;for(i=0;i>cy[i].name;cout>cy[i].sex;cout>cy[i].year;}cout=1988)m++;}cout#includeusingnamespacestd;structdianhuabu{charname[30];charnum[15];};//定义结构体dianhuabu,包含两个变量:名字和电话号码。由于电话号码较长又无需对其进行具体处理,故定义为字符串型intmain(){dianhuabudhb[5];//声明dianhuabu型变量inti;for(i=0;i>dhb[i].name;cout>dhb[i].num;}coutusingnamespacestd;intmain(){inta[7],b[7],c[14];inti,j,m=0;cout>*(a+i);cout>*(b+j);for(i=0;iusingnamespacestd;enumColors{red,yellow,blue,white,black};voidys(inti){switch(i){casered:coutusingnamespacestd;voidpanduan(inti)//自定义函数,用于判断i是不是完全数{intm,s=0;int*num=newint[i];//动态分配数组空间,虽然仍然大于实际需要值,但数组大小基本上得到了控制for(m=1;m#includeusingnamespacestd;structfrequency{charword[20];intn;}danci[100];//定义结构体变量danci,它由单词及其频率两个量组成structw{chara[20];}in[100];//定义了个元素的字符串组,用于储存输入的句子中的每个单词intfre(charnu[],win[],intmu)//统计每个单词的频率函数{inti,pl=0;for(i=0;i= a )||(a= A ))//判断若已经是字母了的话就进入循环记录接下来的单词内容,否则继续i增加直到走完非字母字符到达字母{m=0;k=i;charb=*(article+k);while((b= a )||(b= A ))//当它是字母就循环,若已经不是字母了,就跳出循环{in[j].a[m]=b;k++;m++;b=*(article+k);};//一直加直到遇到非字母字符时停止in[j].a[m]= \0 ;//这个单词转录完了之后,将最后一个字符写为‘\0 以防乱码j++;//下一个单词的写入i=k-1;//由于在小循环中k最后一次循环多加了一个,所以在这里扣除,赋给i,i就不再执行单词的中间字母部分,只需对非字母部分判断直到遇到下一个单词的开头字母}}//至此,已记录所有单词到in[].a中。intmu=j;//记录下单词数目,共有单词mu个(注意到最后j加了)//然后将每一个不同的单词储存在danci[].word里ints=0;for(i=0;iusingnamespacestd;structfrequency{intm;//数字intn;//频率};intmain(){intx;//输入的数cout>x;inta,i,j,k,s=x;//s初始为输入值,后逐渐缩小,用于求解位数;a得到的是位数for(a=0;s>0;a++)s=s/10;int*num=newint[a];for(i=0,s=x;i#includeusingnamespacestd;staticchar*gewei[]={““,“one“,“two“,“three“,“four“,“five“,“six“,“seven“,“eight“,“nine“,“ten“,“eleven“,“twelve“,“thirteen“,“fourteen“,“fifteen“,“sixteen“,“seventeen“,“eighteen“,“nineteen“};staticchar*shiwei[]={““,““,“twenty“,“thirty“,“forty“,“fifty“,“sixty“,“seventy“,“eighty“,“ninety“};char*m(inta){intb=a%100;charoutput[50]=““;if(a/100!=0){strcat(output,gewei[a/100]);strcat(output,“hundred“);if(b!=0)strcat(output,“and“);}if(b>n;inta=n/1000000,b=(n%1000000)/1000,c=n%1000;if(a!=0){strcat(str,m(a));strcat(str,“million“);}if(b!=0){strcat(str,m(b));strcat(str,“thousand“);}if(c!=0){if(cusingnamespacestd;intcount(char*pi,char*pj){intnum=0;char*pt=pi;intpjn=strlen(pj);while(*pt!= \0 pt++;}returnnum;}voidmain(){char*pa=“ganggugangguganggangangang“,*pb=“gan“;cout<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值