大学c语言题目 拍照的 希望各位朋友可以帮助一下 可以有偿后续还会有题目 欢迎来答 有偿的
1
#include <stdio.h>
int main() {
char c;
printf("Enter a character: ");
scanf("%c", &c);
if (c >= 'a' && c <= 'z') {
c -= 32; // 小写字母转大写字母
} else if (c >= 'A' && c <= 'Z') {
c += 32; // 大写字母转小写字母
}
printf("%c", c);
return 0;
}
//第1题
float x;
int y;
printf("Enter a number:");
scanf("%f", &x);
if (x > 0)
y = 1;
else if (x == 0)
y = 0;
else
y = -1;
printf("y=%d", y);
//第2题
char c;
printf("Enter a character: ");
scanf("%c", &c);
if (islower(c))
toupper(c); //小写字母转大写字母
else if (isupper(c))
tolower(c); //大写字母转小写字母
printf("%c", c);
//第3题
int year;
printf("请输入年份:");
scanf("%d", &year);
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
printf("%d年是闰年", year);
else
printf("%d年不是闰年", year);
//第4题
int num;
printf("Enter a number:");
scanf("%d", &num);
switch (num)
{
case 1:
printf("111\n");
break;
case 2:
printf("222\n");
break;
case 3:
printf("333\n");
break;
case 4:
printf("444\n");
break;
default:
printf("error\n");
break;
}
//第5题
int day;
scanf("%d", &day); // 从键盘输入一个整数
switch (day)
{
case 1:
printf("Monday");
break;
case 2:
printf("Tuesday");
break;
case 3:
printf("Wednesday");
break;
case 4:
printf("Thursday");
break;
case 5:
printf("Friday");
break;
case 6:
printf("Saturday");
break;
case 7:
printf("Sunday");
break;
default:
printf("Error"); // 其他情况输出"Error"
break;
}
//第6题
double a, b, c;
scanf("%lf %lf %lf", &a, &b, &c);
if (a + b > c && a + c > b && b + c > a)
{ // 判断是否构成三角形
if (a == b && b == c)
printf("equilateral triangle\n");
else if (a == b || b == c || a == c)
{
if (a * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * a)
printf("isosceles right triangle\n");
else
printf("isosceles triangle\n");
}
else if (a * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * a)
printf("right triangle\n");
else
printf("arbitrary triangle\n");
}
else
printf("not triangle\n");
#include <stdio.h>
#include <string.h>
#include <Windows.h>
#pragma warning(disable:4996)
typedef struct contactNode{ //定义联系人结构体
char name[15];
char sex[15];
int age;
char number[20];
char address[100];
};
contactNode nodes[1000]; //全局定义1000个联系人的数组用于存放联系人
int countIndex = 0; //用于控制数组下标
void addContactInformation(){
printf("请输入你要添加的联系人信息\n");
printf("姓名:");
scanf("%s", &nodes[countIndex].name);
printf("性别:");
scanf("%s", &nodes[countIndex].sex);
printf("年龄:");
scanf("%d", &nodes[countIndex].age);
printf("电话号码:");
scanf("%s", &nodes[countIndex].number);
printf("地址:");
scanf("%s", &nodes[countIndex].address);
countIndex++;
printf("联系人添加成功!\n");
}
void deleteSpecifiedContactInformation(){
printf("请输入你要删除的联系人信息\n");
char deleteName[15] ; //用于存储需要删除的联系人姓名
char deleteNumber[20]; //用于存储需要删除的联系人电话号码
printf("姓名:");
scanf("%s", &deleteName);
printf("电话号码:");
scanf("%s",&deleteNumber);
int tempIndex = -1; //用于存储需要删除的联系人在数组中的的下标
int i;
for (i = 0; i < countIndex; i++) //寻找需要删除的联系人
{
if (strcmp(deleteName, nodes[i].name) == 0 && strcmp(deleteNumber, nodes[i].number) == 0){
tempIndex = i;
break;
}
}
if (tempIndex == -1){
printf("无此联系人!\n");
}
else{
for (int j = tempIndex; j < countIndex - 1; j++){ //将该联系人之后所有联系人前移一个位置,将需要删除的联系人覆盖
strcpy(nodes[j].name, nodes[j + 1].name);
strcpy(nodes[j].sex, nodes[j + 1].sex);
nodes[j].age = nodes[j + 1].age;
strcpy(nodes[j].number, nodes[j + 1].number);
strcpy(nodes[j].address, nodes[j + 1].address);
}
countIndex--; //联系人总数减1
printf("删除成功!");
}
}
void findSpecifiedContactInformation(){
printf("请输入你要查询的联系人信息\n");
char findName[15]; //用于存储需要查询的联系人姓名
char findNumber[20]; //用于存储需要查询的联系人电话号码
printf("姓名:");
scanf("%s", &findName);
printf("电话号码:");
scanf("%s", &findNumber);
int tempIndex = -1; //用于存储需要删除的联系人在数组中的的下标
int i;
for (i = 0; i < countIndex; i++) //寻找需要删除的联系人
{
if (strcmp(findName, nodes[i].name) == 0 && strcmp(findNumber, nodes[i].number) == 0){
tempIndex = i;
break;
}
}
if (tempIndex == -1){
printf("无此联系人!\n");
}
else{
printf("=========================================================================================\n");
printf("|Name\t|Sex\t|Age\t|Tel\t\t\t|Address\t\t\t\n");
printf("-----------------------------------------------------------------------------------------\n");
printf("|%s\t|%s\t|%d\t|%s\t\t\t|%s\t\t\t\n", nodes[tempIndex].name, nodes[tempIndex].sex, nodes[tempIndex].age, nodes[tempIndex].number, nodes[tempIndex].address);
printf("-----------------------------------------------------------------------------------------\n");
printf("=========================================================================================\n");
printf("查询成功!\n");
}
}
void modifySpecifiedContactInformation(){
printf("请输入你要修改的联系人信息\n");
char findName[15]; //用于存储需要查询的联系人姓名
char findNumber[20]; //用于存储需要查询的联系人电话号码
printf("待修改联系人姓名:");
scanf("%s", &findName);
printf("待修改联系人电话号码:");
scanf("%s", &findNumber);
int tempIndex = -1; //用于存储需要修改的联系人在数组中的的下标
int i;
for (i = 0; i < countIndex; i++) //寻找需要修改的联系人
{
if (strcmp(findName, nodes[i].name) == 0 && strcmp(findNumber, nodes[i].number) == 0){
tempIndex = i;
break;
}
}
if (tempIndex == -1){
printf("无此联系人!\n");
}
else{
printf("修改后的姓名:");
scanf("%s", &nodes[tempIndex].name);
printf("修改后的性别:");
scanf("%s", &nodes[tempIndex].sex);
printf("修改后的年龄:");
scanf("%d", &nodes[tempIndex].age);
printf("修改后的电话号码:");
scanf("%s", &nodes[tempIndex].number);
printf("修改后的地址:");
scanf("%s", &nodes[tempIndex].address);
printf("修改成功!");
}
}
void emptyAllContacts(){
countIndex = 0;
printf("通讯录已清空!\n");
}
void displayAllContactInformation(){
printf("=========================================================================================\n");
printf("|Name\t|Sex\t|Age\t|Tel\t\t\t|Address\t\t\t\n");
printf("-----------------------------------------------------------------------------------------\n");
for (int i = 0; i < countIndex; i++)
{
printf("|%s\t|%s\t|%d\t|%s\t\t\t|%s\t\t\t\n", nodes[i].name, nodes[i].sex, nodes[i].age, nodes[i].number, nodes[i].address);
printf("-----------------------------------------------------------------------------------------\n");
}
printf("=========================================================================================\n");
}
void sortContactsByName(){
for (int i = 0; i < countIndex; i++)
{
for (int j = i; j < countIndex; j++){
if (strcmp(nodes[i].name, nodes[j].name) > 0){
contactNode tempnode;
strcpy(tempnode.name, nodes[i].name);
strcpy(tempnode.sex, nodes[i].sex);
tempnode.age = nodes[i].age;
strcpy(tempnode.number, nodes[i].number);
strcpy(tempnode.address, nodes[i].address);
strcpy(nodes[i].name, nodes[j].name);
strcpy(nodes[i].sex, nodes[j].sex);
nodes[i].age = nodes[j].age;
strcpy(nodes[i].number, nodes[j].number);
strcpy(nodes[i].address, nodes[j].address);
strcpy(nodes[j].name, tempnode.name);
strcpy(nodes[j].sex, tempnode.sex);
nodes[j].age = tempnode.age;
strcpy(nodes[j].number, tempnode.number);
strcpy(nodes[j].address, tempnode.address);
}
}
}
printf("已升序排列!\n");
}
void menu(){
while (1){
printf("\n==========通讯录==========\n||");
printf("0.退出系统 |\n||");
printf("1.添加联系人信息 |\n||");
printf("2.删除指定联系人信息 |\n||");
printf("3.查找指定联系人信息 |\n||");
printf("4.修改指定联系人信息 |\n||");
printf("5.显示所有联系人信息 |\n||");
printf("6.清空所有联系人 |\n||");
printf("7.以名字排序所有联系人 |\n");
printf("==========================\n");
int choice;
printf("\n请输入您的选择:");
scanf("%d", &choice);
switch (choice)
{
default:
printf("输入不合法!\n");
break;
case 0:
printf("byebye!!\n");
return;
case 1:
addContactInformation();
break;
case 2:
deleteSpecifiedContactInformation();
break;
case 3:
findSpecifiedContactInformation();
break;
case 4:
modifySpecifiedContactInformation();
break;
case 5:
displayAllContactInformation();
break;
case 6:
emptyAllContacts();
break;
case 7:
sortContactsByName();
break;
}
}
}
int main(){
menu();
system("pause");
return 0;
}