当前位置: 首页 > article >正文

C++ 数组与结构 编程练习

一 回文判断

题目内容:
回文测试:
输入一个30个字符以内的字符串,判断是否位回文,如果是,则打印true;否则打印false;
像“abc”这样的从左往右读与从右往左读一至就是回文。
输入样式:
ayzya
输出样式1:
true
输入样例2
ayzy
输出样例2:
false

/*
* 像"aba"这样的从左往右读与从右往左读一直的就是回文
*/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

//输入样式ayzya
int main()
{
	char str[6];
	int left, len, right;
	printf("请输入字符串:\n");
	fgets(str, sizeof(str), stdin); 使用fgets函数安全地读取用户输入(避免gets带来的缓冲区溢出问题)

	len = strlen(str);
	if (str[len - 1] == '\n')
	{
		str[len - 1] = '\0';
		len--;//调整字符串有效长度
	}

	bool Flag = true;//初始化标志,表示是回文字符串
	left = 0; right = len - 1;// // 分别设置左右指针,初始指向字符串两端

	while (left < right)
	{
		printf("%c%c \n", str[left], str[right]);
		if (str[left] != str[right])
		{
			Flag = false;
			break;
		}
		left++;//左指针向右移动一位
		right--;//右指针向左移动一位
	}
	puts(Flag ? "是回文字符串:ture" : "不是回文字符串:false");
	return 0;
}

二 结构排序

题目内容:
书有书名(字符串长度不超过50字节),价格(单精度实数),分类(正整数).
书的结构定义如下:

struct book
{
    char name[50];
    float price;
    int classification;
};

输入n本书(n<=100),及每本书的书名,价格和分类(空格分隔输入数据),请粉笔根据价格递增顺序排序,如果价格相同,则按照书名(ASCII码)递增排序。最后输出排序后的结果,每行一本书详细信息,按照:书名,价格(保留2位小数),分类由逗号分隔。
例子
输入:

3
program 35 1
history 35 2
cloudy-computing 57 1
输出
histor,35.00,2
program.35.00,1
cloudy-computing,57.00,1

三 排序

题目内容:
接受若干非负整数(数据不重复),当个数超过10个或者遇到负数时停止接受,将这几个正整数按升序排列输出,并且奇数在前,偶数在后。输出要求,每个数字后输出空格与其他数字隔开,最后一个数字后也有空格。
输入样例1:
10 9 8 7 6 5 4 3 2 1
输出样例2:
1 3 5 7 9 2 4 6 8 10

输入样例2
2 3 4 5 -1

输出样例2:
3 5 2 4 回车


http://www.kler.cn/a/398056.html

相关文章:

  • 琐碎笔记——pytest实现前置、后置、参数化、跳过用例执行以及重试
  • c++原型模式(Prototype Pattern)
  • 移除元素(leetcode 27)
  • IQ Offset之工厂实例分析
  • 0 -vscode搭建python环境教程参考(windows)
  • 03-axios常用的请求方法、axios错误处理
  • vscode报错:Connecting with SSH time-out.
  • [vulnhub] Chronos: 1
  • linux系统kkFileView 配置https预览文件
  • [Docker#10] network | 架构 | CRUD | 5种常见网络类型 (实验)
  • Git主干分支master开发优缺点
  • 从入门到精通:一文掌握 Dockerfile 的用法!(多阶段构建与缓存优化)
  • 基于STM32的智能停车管理系统设计
  • 基于Java的医院病历管理系统
  • 人工智能引发直播革命:AI 技术塑造无人直播全新体验
  • 【python】用 Scrapy 实现高效爬虫项目
  • Ubuntu24安装配置NDK
  • 《Redis内存淘汰策略及分布式锁应用详解》
  • Springboot校园失物招领平台
  • 重修设计模式-行为型-命令模式
  • 【深度学习】模型参数冻结:原理、应用与实践
  • SpringBoot(二十五)SpringBoot集成JRebel实现热更新
  • Scratch 014生日贺卡(上)
  • 使用ACF插件向WooCommerce商城产品添加自定义字段
  • Net C# Nullable<T> Nullable、null、?
  • MPTCP协议